共用方式為


gluTessProperty 函式

gluTessProperty 函式會設定鑲嵌物件的 屬性。

語法

void WINAPI gluTessProperty(
   GLUtesselator *tess,
   GLenum        which,
   GLdouble      value
);

參數

苔 絲

gluNewTess) 建立的鑲嵌物件 (。

哪一個

要設定的屬性值。 下列值有效:GLU_TESS_WINDING_RULE、GLU_TESS_BOUNDARY_ONLY和GLU_TESS_TOLERANCE。

意義
GLU_TESS_WINDING_RULE
決定多邊形的哪個部分位於內部。 value 參數可以設定為下列其中一項:GLU_TESS_WINDING_ODD、GLU_TESS_WINDING_NONZERO、GLU_TESS_WINDING_POSITIVE、GLU_TESS_WINDING_NEGATIVE或GLU_TESS_WINDING_ABS_GEQ_TWO。
若要瞭解彎曲規則的運作方式,請先考慮輸入分佈會將平面分割成區域。 彎曲規則會決定這些區域位於多邊形內。
針對單一曲線 C,點 x 的曲線數只是我們在 x (周圍移動一次的帶正數) 時,繞著 x 的帶正數。 有數個曲線時,會加總個別的曲線。 此程式會將帶正負號的整數值與平面中的每個點 x 產生關聯。 請注意,單一區域中所有點的彎曲數都相同。
如果盤子數屬於所選類別 (奇數、非零、正數、負數或絕對值至少兩個) ,則會將區域分類為「內部」。 在 GLU 1.2 之前的先前 GLU 鑲嵌器 () 使用「奇數」規則。 「非零」規則 (GLU_TESS_WINDING_NONZERO) 是定義內部的另一個常見方式。 其他三個規則 (GLU_TESS_WINDING_POSITIVE GLU_TESS_WINDING_NEGATIVE,GLU_TESS_WINDING_ABS_GEQ_TWO) 適用于多邊形 CSG 作業。
GLU_TESS_BOUNDARY_ONLY
指定布林值 (將值設定為GL_TRUE或GL_FALSE) 。 當您將值設定為GL_TRUE時,會傳回一組封閉的曲線,以分隔多邊形內部和外部,而不是鑲嵌。 外部分佈是相對於常態的反時針方向;內部分佈是順時針方向。 GLU_TESS_BEGIN和GLU_TESS_BEGIN_DATA回呼會針對每個分佈使用類型GL_LINE_LOOP。
GLU_TESS_TOLERANCE
指定合併功能的容錯,以減少輸出的大小。 例如,兩個非常接近彼此的頂點可能會由單一頂點取代。 容錯會乘以任何輸入頂點的最大座標大小;這會指定任何功能都可以隨著單一合併作業而移動的最大距離。 如果單一功能參與數個合併作業,移動的總距離可能會較大。
功能合併是完全選擇性的;容錯只是提示。 實作可以自由地合併在某些情況下,而不是其他案例,或完全不合並功能。 預設容錯為零。
目前實作只會在頂點完全一致時合併頂點,而不論目前的容錯為何。 只有在實作無法區分頂點所在的邊緣時,頂點才會切割成邊緣。 只有在兩個端點都相同時,才會合並兩個邊緣。

value

所指示屬性的值。

傳回值

此函式不會傳回值。

備註

gluTessProperty 函式會控制儲存在鑲嵌物件中的屬性。 這些屬性會影響多邊形的解譯和轉譯方式。

規格需求

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

另請參閱

gluGetTessProperty

gluNewTess