OpenGL을 사용하여 Hermite 커브를 그릴 수있는 방법은 무엇입니까? 저는 베지에 곡선을 그릴 때 평가자를 사용하는 방법을 보여 주지만 Hermite 곡선에 대한 정보를 찾을 수없는 몇 가지 예를 온라인에서 보았습니다.OpenGL에서 Hermite 커브 그리기
답변
어떤 Hermite 곡선을 베 지어 곡선으로 변환 한 다음 그릴 수 있습니다. 그들은 단순히 C3에서 두 개의 서로 다른베이스를 사용하여 정의됩니다. Google은 그다지 유용하지 않았기 때문에 이것이 일반적인 질문 인 것처럼 보였습니다. 그래서 우리는 StackOverflow에 대한 답을 명확하게, 어쩌면 몇 가지 샘플 코드로 만들어야합니다. 나는 내일 다시 올 것이다.
스티븐 (Steven)이 언급했듯이, 입체 허밋 (Hermite) 곡선을 입방 형 베 지어 곡선으로 변환 할 수 있습니다. 사실 아주 간단합니다. 종점
V1
- P0
P1
에서 유도체 - 시작점V0
-
P0
:일반적인 입방 미트 곡선은 두 지점과 두 벡터로 정의되고 - 유래 물 :
P1
입방 베 지어로의 변환은 간단하다 : 그런 다음 사용하고 평가자 또는 원하는 다른 방법으로 당신의 베 지어 곡선을 그릴 수
B0 = P0
B1 = P0 + V0/3
B2 = P1 - V1/3
B3 = P1
.
베 지어에 대한 제어점 벡터는 [b0 b1 b2 b3]이고 Hermite의 제어점 벡터는 [h0 h1 v0 v1]입니다 (v0 및 v1은 점 h0 및 h1에서 미분/접선 임). 그런 다음 우리는 변환을 보여 매트릭스 양식을 사용할 수 있습니다 :
미트를
[b0] = 1 [ 3 0 0 0] [h0] [b1] - [ 3 0 1 0] [h1] [b2] 3 [ 0 3 0 -1] [v0] [b3] [ 0 3 0 0] [v1]
베 지어
에 (이 위, 정확히 Naaff의 응답과 같다).베 지어는
[h0] = [ 1 0 0 0] [b0] [h1] [ 0 0 0 1] [b1] [v0] [-3 3 0 0] [b2] [v1] [ 0 0 -3 3] [b3]그래서 행렬이 아마도 약간 더 복잡한 필요한 것보다 (모든 Naaff의 코드가 짧아 후 지점)이다 형성 미트합니다. 우리는 쉽게 헤르메만 족을 매우 쉽게 지나칠 수 있기 때문에 유용합니다.
특히 우리는 Catmull-Rom 곡선과 같은 다른 고전적인 기본 입체 파라 메트릭 곡선을 가져올 수 있습니다. 컨트롤 포인트 [c_1 c0 c1 c2]가 있습니다 (베 지어 커브와 달리 커브는 두 번째 컨트롤 포인트에서 세 번째 컨트롤 포인트까지 실행되므로 -1에서 일반적인 번호 매기기). 베 지어에 대한 전환은 다음과 같습니다
캐트 멀 롬 베지에
[b0] = 1 [ 0 6 0 0] [c_1] [b1] - [-1 6 1 0] [c0] [b2] 6 [ 0 1 6 -1] [c1] [b3] [ 0 0 6 0] [c2]
베 지어 캐트 멀 롬에
[c_1] = [ 6 -6 0 1] [b0] [c0] [ 1 0 0 0] [b1] [c1] [ 0 0 0 1] [b2] [c2] [ 1 0 -6 6] [b3]
내가 너무 캐트 멀 롬 쌍에 미트를 할 수 있지만,이 ' 베 지어가 일반적으로 기본 표현이기 때문에 거의 사용되지 않습니다.
- 1. OpenGL에서 투명한 다각형 그리기
- 2. OpenGL에서 문자열 그리기
- 3. OpenGL에서 NGON 그리기
- 4. OpenGL에서 Bresenham의 알고리즘을 사용한 그리기
- 5. OpenGL에서 섬의 2D 실루엣 그리기
- 6. OpenGL에서 3D 모양의 선 그리기
- 7. OpenGL에서 투명도가있는 솔리드 구도 그리기
- 8. OpenGL에서 외곽선이있는 획 문자 그리기
- 9. 는 OpenGL에서 떨리는 선 그리기
- 10. OpenGL에서 현재 그리기 위치를 어떻게 결정합니까?
- 11. OpenGL에서 간단한 앤티 앨리어싱 스티커맨 그리기
- 12. Hermite 서페이스를 OpenGL에서 사용하기 위해 어떻게 베 지어 서페이스로 변환 할 수 있습니까?
- 13. 베 지어 커브 및 프랑스어 커브
- 14. OpenGL에서 한 번의 그리기 호출로 여러 VBO 렌더링
- 15. 커브 3x3 큰 행렬에서
- 16. 실버 커브의 동적 커브
- 17. 마우스 오버 커브
- 18. 자바 커브 피팅 라이브러리
- 19. 톤 커브 - 라이트 룸
- 20. 커브 스프라이트 이동 COCOS2D
- 21. 커브 수식 찾기
- 22. 파이썬에서 커브 피팅
- 23. 커브 라인 추적
- 24. Html5 캔버스 베 지어에 점선으로 된 커브
- 25. OpenGL에서 glDrawArray 호출 최소화
- 26. OpenGL에서 회전
- 27. openGl에서 오리엔테이션
- 28. OpenGL에서 '삭제'쿼드
- 29. OpenGl에서 텍스처링
- 30. 커브 모양의 패널 및 단추 #