GraphicLibrary  0.5.0
tadah_fussy::gl::pen::GLinePatternSet クラス

ライン・パターンに従った点描画クラス [詳解]

tadah_fussy::gl::pen::GLinePatternSet の継承関係図
tadah_fussy::gl::pen::GPixelOp

公開メンバ関数

 GLinePatternSet (GPixelOp &pixelOp, unsigned char pattern=0xFF)
 ピクセル操作用関数とライン・パターンを指定して構築 [詳解]
 
void setPattern (unsigned char pattern)
 ライン・パターンをセットする [詳解]
 
void setPixelOp (GPixelOp &pixelOp)
 ピクセル操作用関数をセットする [詳解]
 
void reset ()
 ライン・パターン上の現在位置をリセットする [詳解]
 
virtual bool operator() (canvas::DrawingArea_IF &draw, Coord< int > c)
 ライン・パターンに従ってピクセル操作する [詳解]
 
- 基底クラス tadah_fussy::gl::pen::GPixelOp に属する継承公開メンバ関数
virtual ~GPixelOp ()
 仮想デストラクタ (何もしない)
 

詳解

ライン・パターンに従った点描画クラス

8 ビットのサイズのビット列 ( ライン・パターン ) を使い、ビットが立っている位置のピクセルだけを操作する。 ライン描画などのように隣り合ったピクセルを連続して描画していることを前提としていることに注意。 例えばピクセル操作に GPSet を指定し、ライン・パターンを 1010_1010 として GLine::DrawLine を利用すれば、点線を描画することができる。

構築子と解体子

◆ GLinePatternSet()

tadah_fussy::gl::pen::GLinePatternSet::GLinePatternSet ( GPixelOp pixelOp,
unsigned char  pattern = 0xFF 
)
inline

ピクセル操作用関数とライン・パターンを指定して構築

引数
pixelOpピクセル操作用関数オブジェクト
patternライン・パターン

関数詳解

◆ operator()()

virtual bool tadah_fussy::gl::pen::GLinePatternSet::operator() ( canvas::DrawingArea_IF draw,
Coord< int >  c 
)
virtual

ライン・パターンに従ってピクセル操作する

描画領域 draw またはピクセル操作用関数 pixelOp が未定義の場合は assert を実行する。

引数
drawピクセル操作対象の canvas::DrawingArea_IF
c操作するピクセルの座標
戻り値
ライン・パターン上のビットがゼロでピクセル操作しなかった場合は false を返す
ピクセル操作した場合は、その戻り値を返す

tadah_fussy::gl::pen::GPixelOpを実装しています。

◆ reset()

void tadah_fussy::gl::pen::GLinePatternSet::reset ( )
inline

ライン・パターン上の現在位置をリセットする

現在位置は GLinePatternSet::operator() が呼び出される度に更新されるため、いったんリセットしたい場合に用いる。

◆ setPattern()

void tadah_fussy::gl::pen::GLinePatternSet::setPattern ( unsigned char  pattern)
inline

ライン・パターンをセットする

引数
pattern新たなライン・パターン

◆ setPixelOp()

void tadah_fussy::gl::pen::GLinePatternSet::setPixelOp ( GPixelOp pixelOp)
inline

ピクセル操作用関数をセットする

引数
pixelOp新たなピクセル操作用関数

このクラス詳解は次のファイルから抽出されました: