gluNurbsCurve 函式

gluNurbsCurve函式會定義非統一合理 B 曲線 (NURBS) 曲線的形狀。

語法

void WINAPI gluNurbsCurve(
   GLUnurbs *nobj,
   GLint    nknots,
   GLfloat  *knot,
   GLint    stride,
   GLfloat  *ctlarray,
   GLint    order,
   GLenum   type
);

參數

nobj

使用 gluNewNurbsRenderer) 建立的 NURBS 物件 (。

nknots

knot 中的節數。 nknots參數等於控制點數目加上順序。

nknots nondecreasing knot 值的陣列。

大步

位移 (為連續曲線控制點之間的數個單精確度浮點數) 。

ctlarray

控制點陣列的指標。 座標必須同意 類型

order

NURBS 曲線的順序。 順序參數等於度 + 1;因此,立方曲線的順序為 4。

type

曲線的類型。 如果此曲線定義在gluBeginCurve/gluEndCurve配對內,則此類型可以是任何有效的一維評估工具類型, (例如GL_MAP1_VERTEX_3或GL_MAP1_COLOR_4) 。 在gluBeginTrim/gluEndTrim配對之間,唯一有效的類型是GLU_MAP1_TRIM_2和GLU_MAP1_TRIM_3。

傳回值

此函式不會傳回值。

備註

gluNurbsCurve出現在gluBeginCurve/gluEndCurve配對之間時,它會描述要轉譯的曲線。 您可以藉由將每個專案呈現為gluBeginCurve/GluEndCurve配對之間的個別gluNurbsCurve,以建立位置、紋理和色彩座標的關聯。 請勿對gluNurbsCurve進行多個呼叫,以取得單一gluBeginCurve/gluEndCurve配對內的色彩、位置和紋理資料。 請進行一次呼叫,以描述曲線的位置 (一 GL_MAP1_VERTEX_3或GL_MAP1_VERTEX_4) 。

gluNurbsCurve出現在gluBeginTrim/gluEndTrim配對之間時,它會描述 NURBS 介面上的修剪曲線。 如果 類型 是GLU_MAP1_TRIM_2,它會描述 uv) 參數空間中的二維 (曲線。 如果GLU_MAP1_TRIM_3,它會描述二維同質 (uvw) 參數空間中的曲線。 如需修剪曲線的詳細資訊,請參閱 gluBeginTrim

範例

下列函式會以正常值呈現紋理 NURBS 曲線:

gluBeginCurve(nobj); 
    gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2); 
    gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL); 
    gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);  
gluEndCurve(nobj); 

規格需求

需求
最低支援的用戶端
Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]
標頭
Glu.h
程式庫
Glu32.lib
DLL
Glu32.dll

另請參閱

gluBeginCurve

gluBeginTrim

gluEndCurve

gluEndTrim

gluNewNurbsRenderer

gluPwlCurve