11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite...
Transcript of 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite...
![Page 1: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/1.jpg)
곡선과 곡면
01 Spline 곡선
02 Spline 곡면
03 Subdivision 곡면
11
![Page 2: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/2.jpg)
2
𝐶0 연속성
𝐶1 연속성
𝐶2 연속성
𝐶𝑛 연속성
![Page 3: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/3.jpg)
1. Cardinal Spline Curve
2. Hermite Spline Curve
3. Bezier Spline Curve
4. Catmull-Rom Spline Curve
5. B-Spline Curve
6. Clamped B-Spline Curve
7. NURBS(Non-Uniform Rational B-Spline) Curve
Spline 곡선 01
3
![Page 4: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/4.jpg)
1. Cardinal Spline Curve 01
Cardinal Spline Curve 𝐶(𝑡)
4
![Page 5: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/5.jpg)
1. Cardinal Spline Curve 01
Cardinal Spline Curve의 구현 결과
5 (A) Tension = 0.5 (B) Tension = 1.5
코드 11-1
![Page 6: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/6.jpg)
2. Hermite Spline Curve 01
Cubic Hermite Spline Curve H(𝑡)
6
![Page 7: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/7.jpg)
2. Hermite Spline Curve 01
Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions / Basis Functions
7
(A) 2개의 제어점(P1, P2) 및 각 제어점에 대한 장력(T1, T2)에 의해 생성된 Cubic
Hermite Curve의 기본적인 형태
(B) Cubic Hermite Curve를 위한 Blending Functions / Basis
Functions
![Page 8: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/8.jpg)
2. Hermite Spline Curve 01
끝점(Endpoint) 𝑃2을 공유하는 두 개의 Hermite Spline Curves
8
![Page 9: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/9.jpg)
2. Hermite Spline Curve 01
Hermite Spline Curve의 구현 결과
9
코드 11-2
![Page 10: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/10.jpg)
3. Bezier Spline Curve 01
Bezier Spline Curve의 생성 과정
10
(A-①) 초기 (A-②) 중기 (A-③) 말기
(A) 2차 Bezier Spline Curve
![Page 11: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/11.jpg)
3. Bezier Spline Curve 01
Bezier Spline Curve의 생성 과정
11
(B-①) 초기 (B-②) 중기 (B-③) 말기
(B) 3차 Bezier Spline Curve
![Page 12: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/12.jpg)
3. Bezier Spline Curve 01
Bezier Spline Curve의 생성 과정
12
(C-①) 초기 (C-②) 중기 (C-③) 말기
(C) 4차 Bezier Spline Curve
![Page 13: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/13.jpg)
3. Bezier Spline Curve 01
Bezier Spline Curve B(𝑡)
13
![Page 14: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/14.jpg)
3. Bezier Spline Curve 01
(수식 11-21)에 주어진 순환 관계에 의해 생성된 Bernstein Polynomials
14
![Page 15: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/15.jpg)
3. Bezier Spline Curve 01
Cubic Bezier Curve의 기본적인 형태 및 Blending Functions / Basis Functions
15
(A) 4 개 의 제 어 점 에 의 해 생성된 Cubic Bezier Curve의 기본적인 형태
(B) 차수가 3인 Cubic Bezier Curve를 위한 Blending Functions / Basis
Functions
![Page 16: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/16.jpg)
3. Bezier Spline Curve 01
제어점들 𝑃0, 𝑃1, 𝑃2 및 𝑃3을 가지는 Bezier Curve의 다양성
16
![Page 17: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/17.jpg)
3. Bezier Spline Curve 01
Bezier Spline Curve의 구현 결과
17
코드 11-3
![Page 18: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/18.jpg)
4. Catmull-Rom Spline Curve 01
Catmull-Rom Spline Curve 𝐶𝑖(𝑡)
18
![Page 19: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/19.jpg)
4. Catmull-Rom Spline Curve 01
Catmull-Rom Spline Curve의 기본적인 형태 및 Blending Functions / Basis Functions
19
(A) 4개의 제어점에 의해 생성된 Catmull- Rom Spline Curve의 기본적인 형태
(B) 7개의 제어점에 의해 생성된 Catmull- Rom Spline Curve 및 접선들
(C) Catmull-Rom Spline Curve를 위한 Blending Functions / Basis Functions
![Page 20: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/20.jpg)
4. Catmull-Rom Spline Curve 01
Catmull-Rom Spline Curve의 구현 결과
20
코드 11-4
![Page 21: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/21.jpg)
5. B-Spline Curve 01
8개의 제어점 𝑃𝑖을 사용하여 구성된 B-Spline Curve
21
![Page 22: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/22.jpg)
5. B-Spline Curve 01
Uniform Cubic B-Spline Curve의 기본적인 형태 및 Blending Functions / Basis Functions
22
(A) 4 개 제 어 점 에 의 해 생 성 된 Uniform Cubic B-Spline Curve의
기본적인 형태
(B) Uniform Cubic B-Spline Curve를 위한 Blending Functions / Basis Functions
![Page 23: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/23.jpg)
5. B-Spline Curve 01
Uniform Cubic B-Spline Curve 𝑄𝑖(𝑡)
23
![Page 24: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/24.jpg)
5. B-Spline Curve 01
[그림 11-13]에 처음과 마지막 제어점들 모두에 3번 중복한 B-Spline Curve의 결과
24
![Page 25: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/25.jpg)
5. B-Spline Curve 01
[그림 11-13]에서 내부 제어점들 중 하나를 3번 중복한 B-Spline Curve의 결과
25
![Page 26: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/26.jpg)
5. B-Spline Curve 01
B-Spline Curve의 3가지 유형
26
(A) Open B-Spline Curve (B) Clamped B-Spline Curve (C) Closed B-Spline Curve
![Page 27: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/27.jpg)
5. B-Spline Curve 01
B-Spline Curve의 구현 결과
27
코드 11-5
![Page 28: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/28.jpg)
6. Clamped B-Spline Curve 01
Clamped B-Spline Curve의 구현 결과
28
코드 11-6
![Page 29: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/29.jpg)
7. NURBS Curve 01
제어점들과 Knot의 관계
29
![Page 30: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/30.jpg)
7. NURBS Curve 01
NURBS : 제어점 𝑃3에 대응하는 가중치 𝑤3의 변경에 따른 결과
30
![Page 31: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/31.jpg)
7. NURBS Curve 01
NURBS Curve의 구현 결과
31
코드 11-7
![Page 32: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/32.jpg)
1. Hermite Spline Surface
2. Bezier Spline Surface
3. B-Spline Surface
4. NURBS(Non-Uniform Rational B-Spline) Surface
Spline 곡면 02
32
![Page 33: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/33.jpg)
1. Hermite Spline Surface 02
Hermite Spline Curve 𝐻𝑥(𝑠, 𝑡)
33
![Page 34: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/34.jpg)
1. Hermite Spline Surface 02
[𝑔𝑖𝑗]의 x 성분 분포도
34
![Page 35: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/35.jpg)
1. Hermite Spline Surface 02
Hermite Spline Surface 𝐻𝑥(𝑠, 𝑡)의 구성도
35
A) 4개의 제어점에 의해 생성된 Hermite Splinez
Surface이 기본적인 형태
B) 각 제어점에 생성된 접선 Vector 및 2차 미분계수 Vector
![Page 36: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/36.jpg)
1. Hermite Spline Surface 02
Hermite Spline Surface의 구현 결과
36
(A) Wire-frame Hermite Spline Surface: Tension 0.50
B) Wire-frame Hermite Spline Surface: Tension 1.50
(C) Wire-frame Hermite Spline Surface: Tension 3.50
(D) Mesh를 채우고 조명을 적용한 Hermite Spline Surface : Tension 0.50
코드 11-8
![Page 37: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/37.jpg)
1. Hermite Spline Surface 02
glLoadMatrixf 함수의 Prototype
37
glMultiMatrixf 함수의 Prototype
![Page 38: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/38.jpg)
1. Hermite Spline Surface 02
glGetFloatv 함수의 Prototype
38
![Page 39: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/39.jpg)
1. Hermite Spline Surface 02
glMap2f 함수의 Prototype
39
![Page 40: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/40.jpg)
1. Hermite Spline Surface 02
glMapGrid2f 함수의 Prototype
40
![Page 41: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/41.jpg)
1. Hermite Spline Surface 02
glEvalMesh2 함수의 Prototype
41
glEvalCoord2f 함수의 Prototype
![Page 42: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/42.jpg)
2. Bezier Spline Surface 02
Bezier Spline Surface C(u, v)
42
![Page 43: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/43.jpg)
2. Bezier Spline Surface 02
Bezier Spline Surface을 위한 매개변수 방향(u, v) 및 차수(n, m)
43
Bezier Spline Surface C(u, v)
![Page 44: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/44.jpg)
2. Bezier Spline Surface 02
2D Evaluators를 사용한 Wire-frame Bezier Spline Surface의 구현 결과
44
코드 11-9
![Page 45: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/45.jpg)
2. Bezier Spline Surface 02
2D Evaluators를 사용하여 생성한 Bezier Spline Curve에 Mesh를 채우고 조명을 추가한 Bezier Spline Surface의 구현 결과
45
코드 11-10
![Page 46: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/46.jpg)
3. B-Spline Surface 02
차수의 변화에 따른 B-Spline Surface의 변화
46
(A) (Periodic, Periodic) (B) (Non-Periodic, Non-Periodic) (C) (Periodic, Non-Periodic) (p, q)=(3, 3) (p, q)=(3, 3) (p, q)=(5, 2)
![Page 47: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/47.jpg)
3. B-Spline Surface 02
B-Spline Surface의 3가지 유형
47
(A) Clamped (B) Closed (C) Open
![Page 48: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/48.jpg)
3. B-Spline Surface 02
Parametric Curve의 Tension Product
48
![Page 49: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/49.jpg)
3. B-Spline Surface 02
B-Spline Surface Q(u, v)
49
![Page 50: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/50.jpg)
3. B-Spline Surface 02
Bicubic B-Spline Surface의 구현 결과
50
코드 11-11
![Page 51: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/51.jpg)
4. NURBS Surface 02
NURBS Surface S(u, v)
51
![Page 52: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/52.jpg)
4. NURBS Surface 02
NURBS Surface의 구현 결과
52
코드 11-12
![Page 53: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/53.jpg)
4. NURBS Surface 02
gluNewNurbsRenderer 함수의 Prototype
53
![Page 54: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/54.jpg)
4. NURBS Surface 02
gluNurbsProperty 함수의 Prototype
54
![Page 55: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/55.jpg)
4. NURBS Surface 02
gluNurbsProperty 함수의 Prototype
55
![Page 56: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/56.jpg)
4. NURBS Surface 02
gluNurbsProperty 함수의 Prototype
56
![Page 57: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/57.jpg)
4. NURBS Surface 02
gluNurbsProperty 함수의 Prototype
57
![Page 58: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/58.jpg)
4. NURBS Surface 02
gluNurbsProperty 함수의 Prototype
58
![Page 59: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/59.jpg)
4. NURBS Surface 02
gluBeginSurface 함수의 Prototype
59
![Page 60: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/60.jpg)
4. NURBS Surface 02
gluNurbsSurface 함수의 Prototype
60
![Page 61: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/61.jpg)
4. NURBS Surface 02
gluEndSurface 함수의 Prototype
61
![Page 62: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/62.jpg)
1. Catmull-Clark Subdivision Surface
2. Doo-Sabin Subdivision Surface
3. Loop Subdivision Surface
Subdivision 곡면 03
62
![Page 63: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/63.jpg)
Subdivision 곡면 03
63
Subdivision Scheme의 분류
![Page 64: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/64.jpg)
Subdivision 곡면 03
64
육면체(Cube)에 여러 가지 종류의 Subdivision 규칙을 적용한 결과
(A) Original Cube (B) Midpoint Subdivision (C) Catmull-Clark Subdivision
(D) Doo-Sabin Subdivision (E) Loop Subdivision (F) 3 Subdivision
![Page 65: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/65.jpg)
1. Catmull-Clark Subdivision Surface 03
Catmull-Clark Subdivision의 구현 결과 예시
65
![Page 66: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/66.jpg)
1. Catmull-Clark Subdivision Surface 03
Catmull-Clark Subdivision의 규칙
66
![Page 67: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/67.jpg)
1. Catmull-Clark Subdivision Surface 03
Catmull-Clark Subdivision Surface를 위한 새로운 Vertex 생성 및 가중치
67
![Page 68: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/68.jpg)
1. Catmull-Clark Subdivision Surface 03
Catmull-Clark Subdivision Surface의 구현 결과
68 (A) Level 0 (B) Level 1 (C) Level 3
코드 11-13
![Page 69: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/69.jpg)
2. Doo-Sabin Subdivision Surface 03
Doo-Sabin Subdivision Surface의 예시
69
(A) T 모양의 사변형 Mesh에 2번의 세부적인 반복 효과 적용
(B) Limit Surface
(C) Doo-Sabin Subdivision을 육면체(Cube)에 적용한 결과
![Page 70: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/70.jpg)
2. Doo-Sabin Subdivision Surface 03
Doo-Sabin Subdivision Matrix 𝑆𝑘𝐷𝑆
70
![Page 71: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/71.jpg)
2. Doo-Sabin Subdivision Surface 03
Doo-Sabin Subdivision Surface Scheme
71
(A) 기존의 점(Point) 및 라인(Line)들 사이에 세부적인 Vertex들 생성
(B) 기존의 점(Point)들에 대한 가중 치(Weight)를 기준으로 세부적인
Vertex들 중 하나를 생성
![Page 72: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/72.jpg)
2. Doo-Sabin Subdivision Surface 03
Doo-Sabin Subdivision Surface의 구현 결과
72
(A) Level 0 (B) Level 1 (C) Level 2 (D) Level 3
코드 11-14
![Page 73: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/73.jpg)
3. Loop Subdivision Surface 03
Loop Subdivision Surface 규칙
73 (A) 홀수 Vertex들을 위한 Masks (B) 짝수 Vertex들을 위한 Masks
![Page 74: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/74.jpg)
3. Loop Subdivision Surface 03
기존 Vertex들에 대한 위치의 선형 조합으로 새로운 위치 계산
74
![Page 75: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/75.jpg)
3. Loop Subdivision Surface 03
Loop Subdivision Surface의 구현 결과
75 (A) Level 0 (B) Level 1 (C) Level 2
코드 11-15
![Page 76: 11 곡선과 곡면 - SANGJIit.sangji.ac.kr/~3D/ppt/CG/11.pdf · 2017-05-16 · 01 2. Hermite Spline Curve Cubic Hermite Curve를 위한 기본적인 형태 및 Blending Functions](https://reader035.fdocuments.net/reader035/viewer/2022081521/5f01d3277e708231d40138be/html5/thumbnails/76.jpg)
3. Loop Subdivision Surface 03
Loop Subdivision Surface의 구현 결과
76 (A) Level 3 (B) Level 4 (C) Level 5