gluNurbsSurface 函式
gluNurbsSurface函式會定義非統一合理 B 曲線 (NURBS) 表面的形狀。
語法
void WINAPI gluNurbsSurface(
GLUnurbs *nobj,
GLint sknot_count,
float *sknot,
GLint tknot_count,
GLfloat *tknot,
GLint s_stride,
GLint t_stride,
GLfloat *ctlarray,
GLint sorder,
GLint torder,
GLenum type
);
參數
-
nobj
-
使用 gluNewNurbsRenderer) 建立的 NURBS 物件 (。
-
sknot_count
-
參數 u 方向的節數。
-
sknot
-
參數u方向中sknot_count非decreasing knot 值的陣列。
-
tknot_count
-
參數 v 方向的節數。
-
tknot
-
參數v方向中tknot_count非decreasing knot 值的陣列。
-
s_stride
-
位移 (為數個單精確度精確度點值,) 在 ctlarray中參數u方向的連續控制點之間。
-
t_stride
-
單精確度指標值中的位移 () 在ctlarray參數v方向的連續控制點之間。
-
ctlarray
-
陣列,包含 NURBS 介面的控制點。 參數 u 和 v 方向中連續控制點之間的位移是由 s_stride 和 t_stride所指定。
-
sorder
-
參數 u 方向的 NURBS 表面順序。 順序是一個以上的度數,因此u 中的三次方表面順序為 4。
-
torder
-
參數 v 方向的 NURBS 表面順序。 順序是一個以上的度數,因此 ,以 v 為單位的三次方面有 4 個 v 順序。
-
type
-
表面的類型。 類型參數可以是任何有效的二維評估工具類型 (,例如GL_MAP2_VERTEX_3或GL_MAP2_COLOR_4) 。
傳回值
此函式不會傳回值。
備註
在 NURBS 表面定義中使用 gluNurbsSurface 來描述任何修剪) 之前,NURBS 表面 (的形狀。 若要標記 NURBS 表面定義的開頭,請使用 gluBeginSurface 函式。 若要標記 NURBS 表面定義的結尾,請使用 gluEndSurface 函式。 只在 NURBS 介面定義中呼叫 gluNurbsSurface 。
您可以將每個位置、紋理和色彩座標呈現為gluBeginSurface gluEndSurface/ 配對之間的個別gluNurbsSurface,讓位置、紋理和色彩座標產生關聯。 在單一gluBeginSurfacegluEndSurface/ 配對內,您只能呼叫gluNurbsSurface來取得色彩、位置和紋理資料。 請進行一個呼叫,以描述介面 (類型 GL_MAP2_VERTEX_3或GL_MAP2_VERTEX_4) 的位置。
您可以在對 gluBeginTrim和gluEndTrim的呼叫之間使用gluNurbsCurve和gluPwlCurve函式來修剪 NURBS 表面。
具有u方向sknot_count節的gluNurbsSurface,以及tknot_count具有順序sorder和torder的v方向的 knot,必須有 - (sknot_count sknot_countsorder) 由 (tknot_count -torder) 控制點。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows 2000 Server [僅限桌面應用程式] |
標頭 |
|
程式庫 |
|
DLL |
|