GLPOLYGONMODE
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
glPolygonMode
- ポリゴンのラスタ処理モードを選択する
書式
void glPolygonMode(
GLenum face,
GLenum mode )
引き数
- face
-
mode を適用するポリゴンを指定する。
表向きポリゴンに対しては GL_FRONT,
裏向きポリゴンに対しては GL_BACK でなければならない。
表向きポリゴンと裏向きポリゴンの両方の場合には、
GL_FRONT_AND_BACK でなければならない。
- mode
-
ポリゴンをどのようにラスタ処理するかを指定する。
指定できる値は
GL_POINT,
GL_LINE,
GL_FILL である。
初期値は、表向き・裏向きの両方のポリゴンについて GL_FILL である。
説明
glPolygonMode は、ラスタ処理の際のポリゴンの解釈の仕方を制御する。
face は、どのポリゴンに mode を適用するのかを指定する:
表向きポリゴン (GL_FRONT),
裏向きポリゴン (GL_BACK),
またはその両方のいずれかを指定する。
ポリゴンのモードは、最終的なポリゴンのラスタ処理にしか影響しない。
特に、これらのモードが適用される前に
ポリゴンの頂点が描画され、ポリゴンはクリップ処理され、
おそらくカリング処理がなされる。
これらのモードは定義済みであり、mode を使って指定できる:
- GL_POINT
-
境界エッジの始点として印が付けられたポリゴンの頂点が
点として描画される。
GL_POINT_SIZE や
GL_POINT_SMOOTH といった点の属性が
点のラスタ処理を制御する。
ポリゴンのラスタ処理の属性については、GL_POLYGON_MODE 以外のものは
無効である。
- GL_LINE
-
ポリゴンの境界エッジ線分として描画される。
これらは線のスティプル処理に対しては、連続した線分として扱われる。
線のスティプル処理のカウントとパターンは、異なる線分の間でも
リセットされない(glLineStipple を参照)。
GL_LINE_WIDTH や
GL_LINE_SMOOTH といった線の属性が
線のラスタ処理を制御する。
ポリゴンのラスタ処理の属性については、GL_POLYGON_MODE 以外のものは
無効である。
- GL_FILL
-
ポリゴンの内側が塗りつぶされる。
ポリゴンのラスタ処理を制御する。
使用例
裏面のポリゴンが塗りつぶしてあり、表面のポリゴンが
外形線だけの面は次のようにして描画する。
call
glPolygonMode(GL_FRONT, GL_LINE);
注意
稜線フラグを使って、頂点には境界または非境界の印が付けられる。
稜線フラグは、ポリゴンを分割する際に GL が内部的に生成する。
稜線フラグは、glEdgeFlag を使って明示的に設定することもできる。
エラー
GL_INVALID_ENUM:
face または mode の値が不正である場合に起こる。
GL_INVALID_OPERATION:
glBegin と、その対になる glEnd の間で
glPolygonMode が実行されると起こる。
関連する取得値
引き数 GL_POLYGON_MODE を指定した glGet
関連項目
glBegin(3G),
glEdgeFlag(3G),
glLineStipple(3G),
glLineWidth(3G),
glPointSize(3G),
glPolygonStipple(3G)
Index
- 名前
-
- 書式
-
- 引き数
-
- 説明
-
- 使用例
-
- 注意
-
- エラー
-
- 関連する取得値
-
- 関連項目
-
Time: 07:01:09 GMT, January 12, 2009