일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- arduino compiler
- c++
- LineTracer
- 통계학
- priority_queue
- WinAPI
- 시스템프로그래밍
- stl
- vector
- 자료구조
- Array
- 아두이노
- queue
- map
- directx
- 아두이노 소스
- 아두이노 컴파일러
- C언어
- 운영체제
- Stack
- Visual Micro
- Arduino
- list
- Deque
- html
- Algorithm
- set
- 라인트레이서
- 수광 소자
- 컴퓨터 그래픽스
- Today
- Total
Kim's Programming
3차원 그래픽스 객체의 모델링(2/2) 본문
스플라인(Spline) 곡선
베지어 곡선/곡면 |
B-스플라인 곡선/곡면 |
NURBS 곡선/곡면 |
|
곡선의 부드러움 |
ㅇ |
ㅇ |
ㅇ |
블록다각형 내포성 |
ㅇ |
ㅇ |
ㅇ |
국부제어 |
ㅇ/x |
ㅇ |
ㅇ |
2차곡선의 재현 |
x |
x |
ㅇ |
투영불변성 |
x |
x |
ㅇ |
부드러운 물체를 표현하기 위하여, 베지어 곡선, B-스플라인 곡선, 그리고 NURBS 곡선이 일반적으로 많이 이용됩니다. 이러한 모델링 기법들의 공통적인 특성은 모델링 곡선이 제어점들로 구성된 불록 다각형 내부에 항상 위치한다는 사실입니다. B-스플라인 곡선이나 NURBS 곡선의 경우에는 제어점의 위치를 수정할 떄 그 제어점 주위의 곡선 모양만 변하는 국부 제어성을 가지나 베지어 곡선은 일반적으로 국부제어성을 가지고 있지 않습니다. 그러나 짧은 베지어 곡선 세그먼트를 여러개 연결하여 사용하면 각 곡선 단위별로 수정이 가능합니다. 즉 베지어 곡선은 제한적 국부제어성 성질을 가집니다.
베지어 곡선이나 B-스플라인 곡선으로는 원이나 타원과 같은 2차원 곡선(또는 원뿔 곡선)을 만들 수 없으나 NURBS 곡선은 2차곡선을 표현할 수 있습니다. 또한 NURBS 곡선의 가중치를 적절히 조절하면 여러 가지 2차곡선을 그릴 수 있습니다. 즉 2차원 곡선은 NURBS 곡선의 특별한 경우로 이해될 수 있습니다. 3차원 공간에서 주어진 제어점ㅁ들을 근사하는 곡선은 2차원 평면에 디스플레이 되어야합니다. 일반적으로 공간상의 곡선을 투영면에 디스플레이 한 결과와 제어점들을 평면에 투영한 후 투영된 제어점들로부터 얻은 근사곡선의 결과가 일치하는 것이 바랍직합니다. 모델링 곡선이 이러한 성질을 만족할 경우 그 곡선은 투영불변성을 가진다고 합니다. NURBS곡선은 항상 투영불변성은 가지나 나머지 곡선은 투영불변성을 보장하지 않습니다.
기타 모델링 기법
3차원 공간에서 원이나 다각형과 같은 평면도형을 지정된 경로를 따라 이동시키거나 하나의 축을 중심으로 회전 시키면 새로운 3차원 객체가 생성되며 이러한 모델링 기법을 스위핑이라 부릅니다.
2) 솔리드 모델링(Solid Modeling)
솔리드 모델링 기법은 CSG(Constructive Solid Geometry : 조립적 입체기하학) 방식이라고도 불리며, 사면체, 육면체, 구, 원기둥, 원뿔 등과 같은 3차원 기본객체들에 집함 연산 (Union, Difference, Intersection)등을 적용함으로써 새로운 객체를 만드는 방법입니다.
'Computer Theory > Computer Graphics' 카테고리의 다른 글
3차원 그래픽스 조명 모델 (3) | 2016.01.25 |
---|---|
3차원 그래픽스 은면제거 (0) | 2016.01.25 |
3차원 그래픽스 객체의 모델링(1/2) (0) | 2016.01.25 |
3차원 그래픽스 투영을 위한 변환 (4) | 2016.01.24 |
3차원 그래픽스 투영의 종류 (0) | 2016.01.24 |