GLUNURBSCURVE
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
gluNurbsCurve
- NURBS 曲線の形状を定義する
書式
void gluNurbsCurve(
GLUnurbs* nurb,
GLint knotCount,
GLfloat *knots,
GLint stride,
GLfloat *control,
GLint order,
GLenum type )
delim $$
引き数
- nurb
-
NURBS オブジェクト(gluNewNurbsRenderer を使って作る)を指定する。
- knotCount
-
knots に含まれるノット数を指定する。
knotCount は制御点の数に次数を加えた数に等しい。
- knots
-
ノット値が単調増加となるように並べた
knotCount の配列を指定する。
- stride
-
連続する曲線の制御点どうしのオフセットを指定する(
単精度の浮動小数点値として指定する)。
- control
-
制御点の配列を指すポインタを指定する。
座標系は後述の type を満たさなければならない。
- order
-
NURBS 曲線の階数を指定する。
order は度数 + 1 に等しいので、三次曲線の階数は 4 である。
- type
-
曲線の型を指定する。
この曲線が gluBeginCurve と gluEndCurve の対で括られて
いる場合は、曲線の型は次数が 1 の評価処理のいずれでもよい
(GL_MAP1_VERTEX_3, GL_MAP1_COLOR_4 など)。
gluBeginTrim と gluEndTrim の対で括られている場合は、
許される型は GLU_MAP1_TRIM_2 と GLU_MAP1_TRIM_3 の
どちらかだけである。
説明
gluNurbsCurve は NURBS 曲線を記述するために使う。
gluNurbsCurve が gluBeginCurve/gluEndCurve の
対の間に現れたとき、この関数はレンダリングする曲線を記述するために
使われる。
位置座標系・テクスチャ座標系・色座標系は、
一組の gluBeginCurve/gluEndCurve の間で
別々に gluNurbsCurve を記述することで対応を取る。
一組の gluBeginCurve/gluEndCurve の間で
色、位置、テクスチャのいずれかだけについて
gluNurbsCurve を呼び出すこともできる。
曲線の位置を記述するための呼び出しはひとつだけ行わなければならない。
gluNurbsCurve が gluBeginTrim と gluEndTrim の
対の間に現れる場合、この呼び出しは NURBS 曲面上のトリミング曲線を記述
するために使われる。
type が GLU_MAP1_TRIM_2 ならば、この呼び出しは
2 次のパラメータ空間(u と v)上の曲線を記述する。
type が GLU_MAP1_TRIM_3 ならば、この呼び出しは
2 次の同次パラメータ空間(u, v, w)上の曲線を記述する。
トリミング曲線の詳しい説明については gluBeginTrim の項目を参照
すること。
使用例
次のコマンドはテクスチャ処理され、法線を持つ NURBS 曲線を
レンダリングする。
gluBeginCurve(nobj);
gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2);
gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL);
gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);
gluEndCurve(nobj);
注意
うまく繋がっているトリム曲線を定義するには gluPwlCurve を使う
こと。
関連項目
gluBeginCurve(3G), gluBeginTrim(3G), gluNewNurbsRenderer(3G), gluPwlCurve(3G)
Index
- 名前
-
- 書式
-
- 引き数
-
- 説明
-
- 使用例
-
- 注意
-
- 関連項目
-
Time: 07:01:13 GMT, January 12, 2009