typeset 0.1.0
縦書き・横書きの日本語組版ライブラリ(JLReq 水準、ラスタ / PDF / SVG)
読み取り中…
検索中…
一致する文字列を見つけられません
typeset::Paint 構造体

塗り — 単色または線形/放射グラデーション [詳解]

#include <typeset/geom.hpp>

公開メンバ関数

 Paint ()=default
 
 Paint (Color c)
 
bool isGradient () const
 
Color at (float t) const
 t(0〜1)の色。停止点の間を線形補間する
 
Color solid () const
 単色として扱うときの色(グラデーションは中間の色)
 
uint8_t maxAlpha () const
 不透明度の代表値(グラデーションは最大)
 
bool operator== (const Paint &o) const
 
bool operator!= (const Paint &o) const
 

静的公開メンバ関数

static Paint linear (Point from, Point to, std::vector< GradientStop > stops, PaintUnits units=PaintUnits::BoundingBox)
 
static Paint radial (Point center, float radius, std::vector< GradientStop > stops, PaintUnits units=PaintUnits::BoundingBox)
 

公開変数類

PaintKind kind = PaintKind::Solid
 
Color color {0, 0, 0, 255}
 Solid のときの色
 
PaintUnits units = PaintUnits::BoundingBox
 
Point start
 Linear: 始点/Radial: 中心
 
Point end {1.0f, 0.0f}
 Linear: 終点
 
float radius = 0.5f
 Radial: 半径
 
std::vector< GradientStopstops
 offset の昇順
 

詳解

塗り — 単色または線形/放射グラデーション

Color から暗黙に作れるので、単色のときは今までどおり色を代入すればよい。 PDF は停止点ごとの不透明度を持てないので、最大の不透明度を全体に掛ける(ラスタ・SVG は停止点ごと)

geom.hpp158 行目に定義があります。

構築子と解体子

◆ Paint() [1/2]

typeset::Paint::Paint ( )
default

◆ Paint() [2/2]

typeset::Paint::Paint ( Color  c)
inline

geom.hpp168 行目に定義があります。

関数詳解

◆ linear()

static Paint typeset::Paint::linear ( Point  from,
Point  to,
std::vector< GradientStop stops,
PaintUnits  units = PaintUnits::BoundingBox 
)
inlinestatic

geom.hpp170 行目に定義があります。

参照先 end, kind, typeset::Linear, start, stops, units.

◆ radial()

static Paint typeset::Paint::radial ( Point  center,
float  radius,
std::vector< GradientStop stops,
PaintUnits  units = PaintUnits::BoundingBox 
)
inlinestatic

geom.hpp180 行目に定義があります。

参照先 kind, typeset::Radial, radius, start, stops, units.

◆ isGradient()

bool typeset::Paint::isGradient ( ) const
inline

geom.hpp191 行目に定義があります。

参照先 kind, typeset::Solid, stops.

参照元 maxAlpha(), solid().

◆ at()

Color typeset::Paint::at ( float  t) const
inline

t(0〜1)の色。停止点の間を線形補間する

geom.hpp194 行目に定義があります。

参照先 typeset::Color::a, typeset::Color::b, typeset::GradientStop::color, color, typeset::Color::g, typeset::GradientStop::offset, typeset::Color::r, stops.

参照元 solid().

◆ solid()

Color typeset::Paint::solid ( ) const
inline

単色として扱うときの色(グラデーションは中間の色)

geom.hpp214 行目に定義があります。

参照先 at(), color, isGradient().

◆ maxAlpha()

uint8_t typeset::Paint::maxAlpha ( ) const
inline

不透明度の代表値(グラデーションは最大)

geom.hpp216 行目に定義があります。

参照先 typeset::Color::a, color, isGradient(), stops.

◆ operator==()

bool typeset::Paint::operator== ( const Paint o) const
inline

geom.hpp223 行目に定義があります。

参照先 color, end, kind, radius, start, stops, units, typeset::Point::x, typeset::Point::y.

◆ operator!=()

bool typeset::Paint::operator!= ( const Paint o) const
inline

geom.hpp228 行目に定義があります。

メンバ詳解

◆ kind

PaintKind typeset::Paint::kind = PaintKind::Solid

geom.hpp159 行目に定義があります。

参照元 isGradient(), linear(), operator==(), radial().

◆ color

Color typeset::Paint::color {0, 0, 0, 255}

Solid のときの色

geom.hpp160 行目に定義があります。

参照元 at(), maxAlpha(), operator==(), solid().

◆ units

PaintUnits typeset::Paint::units = PaintUnits::BoundingBox

geom.hpp161 行目に定義があります。

参照元 linear(), operator==(), radial().

◆ start

Point typeset::Paint::start

Linear: 始点/Radial: 中心

geom.hpp162 行目に定義があります。

参照元 linear(), operator==(), radial().

◆ end

Point typeset::Paint::end {1.0f, 0.0f}

Linear: 終点

geom.hpp163 行目に定義があります。

参照元 linear(), operator==().

◆ radius

float typeset::Paint::radius = 0.5f

Radial: 半径

geom.hpp164 行目に定義があります。

参照元 operator==(), radial().

◆ stops

std::vector<GradientStop> typeset::Paint::stops

offset の昇順

geom.hpp165 行目に定義があります。

参照元 at(), isGradient(), linear(), maxAlpha(), operator==(), radial().


この構造体詳解は次のファイルから抽出されました: