다음을 통해 공유


gluTessProperty 함수

gluTessProperty 함수는 테셀레이션 개체의 속성을 설정합니다.

구문

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

매개 변수

Tess

테셀레이션 개체( gluNewTess로 생성됨)입니다.

설정할 속성 값입니다. 유효한 값은 GLU_TESS_WINDING_RULE, GLU_TESS_BOUNDARY_ONLY 및 GLU_TESS_TOLERANCE.

의미
GLU_TESS_WINDING_RULE
다각형의 어느 부분이 내부에 있는지 확인합니다. 값 매개 변수는 GLU_TESS_WINDING_ODD, GLU_TESS_WINDING_NONZERO, GLU_TESS_WINDING_POSITIVE, GLU_TESS_WINDING_NEGATIVE 또는 GLU_TESS_WINDING_ABS_GEQ_TWO 중 하나로 설정할 수 있습니다.
권선 규칙의 작동 방식을 이해하려면 먼저 입력 윤곽선이 평면을 영역으로 분할하는 것을 고려합니다. 권선 규칙은 이러한 영역 중 다각형 내에 있는 영역을 결정합니다.
단일 윤곽 C의 경우 포인트 x의 구불구불한 숫자는 단순히 C 주위를 한 번 이동할 때 x를 중심으로 만드는 서명된 회전 수입니다(시계 반대 방향이 양수인 경우). 여러 가지 윤곽선이 있는 경우 개별 권선 번호가 합산됩니다. 이 프로시저는 부록 정수 값을 평면의 각 점 x와 연결합니다. 권선 번호는 단일 지역의 모든 지점에 대해 동일합니다.
권선 규칙은 구불구불한 숫자가 선택한 범주(홀수, 0이 아닌, 양수, 음수 또는 절대값이 2개 이상)에 속하는 경우 지역을 "내부"로 분류합니다. 이전 GLU 테셀레이터(GLU 1.2 이전)는 "홀수" 규칙을 사용했습니다. "0이 아닌" 규칙(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
출력 크기를 줄이기 위해 기능을 병합하기 위한 허용 오차를 지정합니다. 예를 들어 서로 매우 가까운 두 개의 꼭짓점이 단일 꼭짓점으로 대체될 수 있습니다. 허용 오차는 입력 꼭짓점의 최대 좌표 크기를 곱합니다. 단일 병합 작업의 결과로 모든 기능이 이동할 수 있는 최대 거리를 지정합니다. 단일 기능이 여러 병합 작업에 참여하는 경우 이동된 총 거리가 더 클 수 있습니다.
기능 병합은 완전히 선택 사항입니다. 허용 오차는 힌트일 뿐입니다. 구현은 어떤 경우에는 병합할 수 있고 다른 경우에는 병합하지 않거나 기능을 전혀 병합하지 않을 수 있습니다. 기본 허용 오차는 0입니다.
현재 구현은 현재 허용 오차에 관계없이 정확히 일치하는 경우에만 꼭짓점을 병합합니다. 꼭짓점은 구현이 꼭짓점이 있는 가장자리의 어느 쪽을 구분할 수 없는 경우에만 에지에 접합됩니다. 두 엔드포인트가 모두 동일한 경우에만 두 개의 가장자리가 병합됩니다.

value

표시된 속성의 값입니다.

반환 값

이 함수는 값을 반환하지 않습니다.

설명

gluTessProperty 함수는 테셀레이션 개체에 저장된 속성을 제어합니다. 이러한 속성은 다각형이 해석되고 렌더링되는 방식에 영향을 줍니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Glu.h
라이브러리
Glu32.lib
DLL
Glu32.dll

추가 정보

gluGetTessProperty

gluNewTess