2012-10-14 4 views
2

OpenGL에서 제어점과 NURBS 커브의 매듭 점을 그려야합니다. 제어점은 좌표로 정의되므로 아무런 문제가 없습니다. 그러나 매듭에 조금 더 문제가 있습니다.OpenGL Nurbs : 매듭 좌표 찾기

다음과 같이 정의 된 gluNurbsCurve 함수로 얻은 노트의 배열을가집니다.

GLfloat knots[KNOTCOUNT] = {0.00, 0.00, 0.00, 
          0.25, 
          0.50, 0.50, 
          0.75, 
          1.00, 1.00, 1.00} 

이 5 노트의 좌표를 쉽게 파생시킬 수있는 방법이 있습니까? 제어점의 좌표를 기반으로 가정합니까? 아니면 그렇게 평범한가? 제어점의 좌표 및 가중치 이외에도 STRIDEORDER 값이 있습니다.

나는 있습니다 .. gluNurbsCurve α- 함수는이 값을 기준으로 곡선을 그릴 수 있기 때문에 그것이 가능할 것이다

을 생각 아니면 완전히 매듭의 개념을 놓치고?

+0

:

페이지는 스플라인에 전체 대화 형 소개의 일부입니다. –

+0

그건 내 모든 의도입니다. 아직도, 나는 매듭의 x와 y 좌표가 없다. – Joost

+0

질문에 10 개의 부동 배열이 있습니다. 각 2 개의 수레는 매듭의 X와 Y 좌표입니다. 맞습니까? –

답변

2

NURBS에 게시 한 기사를 읽으면 매듭이 포인트보다 더 많은 무게라는 것을 알게됩니다.

"매듭 점 벡터는 제어점이 NURBS 곡선에 영향을 미치는 위치와 방법을 결정하는 매개 변수 값의 시퀀스입니다."

따라서 최고로 매듭은 곡선의 영역으로 나타낼 수 있습니다. 당신은 easly 그것이 매듭의 다양성을 시각화하지만 할 수 있습니다. 연결된 컨트롤 포인트를 적절하게 색칠 만하면됩니다.

+0

당신 말이 맞았습니다. 매듭에 대한 개념은 조금 벗어났습니다. 필자는 시각화보다는 매듭 벡터 편집을위한 명령 행 방식을 택했습니다. – Joost

1

이 웹 페이지를 살펴 보자 그것은 매듭 벡터의 좋은 설명을 제공하고 심지어 당신이 자바 애플릿에서 매듭 벡터 (상단에 작은 노트를 이동하여 재생하려고하자 http://www.ibiblio.org/e-notes/Splines/Basis.htm

을 그림의 오른쪽). Java 애플릿 소스 코드도 사용할 수 있습니다. 내가 5 개 작은 사각형으로, 개별적으로 매듭을 그릴을 추천 할 것입니다 http://www.ibiblio.org/e-notes/Splines/Intro.htm