GLLINESTIPPLE
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
glLineStipple
- 線のスティプルパターンを指定する
書式
void glLineStipple(
GLint factor,
GLushort pattern )
delim $$
引き数
- factor
-
線のスティプルパターンにおいて、各ビット値に掛ける値を指定する。
例えば factor が 3 ならば、パターン内の各ビット値は、
パターン中の次のビットが使われる前に 3 回使われる。
factor の値は [1, 256] の範囲に制限される。
またデフォルト値は 1 である。
- pattern
-
16ビットの整数値を指定する。
このビットパターンは、線が描画されるときに、
線のどの微小要素が描画されるのかを決める。
ビット 0 が先に使われる。
デフォルトのパターンは全てが 1 である。
説明
線のスティプル処理は、ラスタ処理によって生成される
微小要素の一部をマスクする。
マスクされた微小要素は描画されない。
このマスク処理は 3 つのパラメータを使って実現される:
すなわち 16ビットの線スティプルパターン(pattern),
繰り返し回数(factor),
整数のスティプルカウンタ($s$) である。
カウンタ $s$ は、glBegin が呼ばれた時と、
glBegin(GL_LINES)/glEnd のシーケンスによる
それぞれの線分が生成される前に必ず 0 にリセットされる。
このカウンタは、単位幅のアンチエイリアス処理されていない線分について
微小要素が生成された場合か、
幅が $i$ の線分について $i$ 個の微小要素が生成された場合に増加する。
カウント $s$ に属する $i$ 個の微小要素は、条件
pattern bit $(s ~/~ "factor") ~roman mod~ 16$
が 0 ならばマスクされる。
それ以外の場合には、これらの微小要素はフレームバッファに送られる。
pattern のビット 0 が最小ビットである。
アンチエイリアス処理された線は、スティプル処理においては、
$1 times width$ 個の長方形の並びとして扱われる。
矩形 $s$ がラスタ処理されるかどうかは、アンチエイリアス処理されていない
線について説明した微小要素の処理規則に基づく。
ただし数えるのは微小要素のグループではなく、矩形である。
線のスティプル処理を有効または無効にするには、
引き数 GL_LINE_STIPPLE を指定して
glEnable または glDisable を呼ぶ。
スティプル処理が有効なときは、
線のスティプルパターンは前述のように適用される。
無効のときには、スティプルパターンが全て 1 であるかのように動作する。
初期状態では、線のスティプル処理は無効である。
エラー
GL_INVALID_OPERATION:
glBegin と、その対になる glEnd の間で
glLineStipple が実行されると起こる。
関連する取得値
引き数 GL_LINE_STIPPLE_PATTERN を指定した glGet
引き数 GL_LINE_STIPPLE_REPEAT を指定した glGet
引き数 GL_LINE_STIPPLE を指定した glIsEnabled
関連項目
glLineWidth(3G),
glPolygonStipple(3G)
Index
- 名前
-
- 書式
-
- 引き数
-
- 説明
-
- エラー
-
- 関連する取得値
-
- 関連項目
-
Time: 07:01:08 GMT, January 12, 2009