11 곡선과곡면 01 Spline 곡선 02 Spline 곡면 03 Subdivision 곡면
C n 연속성 C 0 연속성 C 1 연속성 2 C 2 연속성
01 Spline 곡선 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 3
01 1. Cardinal Spline Curve Cardinal Spline Curve C(t) 4
01 1. Cardinal Spline Curve Cardinal Spline Curve 의구현결과 코드 11-1 5 (A) Tension = 0.5 (B) Tension = 1.5
01 2. Hermite Spline Curve Cubic Hermite Spline Curve H(t) 6
01 2. Hermite Spline Curve 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
01 2. Hermite Spline Curve 끝점 (Endpoint) P 2 을공유하는두개의 Hermite Spline Curves 8
01 2. Hermite Spline Curve Hermite Spline Curve 의구현결과 코드 11-2 9
01 3. Bezier Spline Curve Bezier Spline Curve 의생성과정 (A-1) 초기 (A-2) 중기 (A-3) 말기 10 (A) 2 차 Bezier Spline Curve
01 3. Bezier Spline Curve Bezier Spline Curve 의생성과정 (B-1) 초기 (B-2) 중기 (B-3) 말기 11 (B) 3 차 Bezier Spline Curve
01 3. Bezier Spline Curve Bezier Spline Curve 의생성과정 (C-1) 초기 (C-2) 중기 (C-3) 말기 12 (C) 4 차 Bezier Spline Curve
01 3. Bezier Spline Curve Bezier Spline Curve B(t) 13
01 3. Bezier Spline Curve ( 수식 11-21) 에주어진순환관계에의해생성된 Bernstein Polynomials 14
01 3. Bezier Spline Curve Cubic Bezier Curve 의기본적인형태및 Blending Functions / Basis Functions 15 (A) 4 개의제어점에의해생성된 Cubic Bezier Curve 의기본적인형태 (B) 차수가 3 인 Cubic Bezier Curve 를위한 Blending Functions / Basis Functions
01 3. Bezier Spline Curve 제어점들 P 0, P 1, P 2 및 P 3 을가지는 Bezier Curve 의다양성 16
01 3. Bezier Spline Curve Bezier Spline Curve 의구현결과 코드 11-3 17
01 4. Catmull-Rom Spline Curve Catmull-Rom Spline Curve C i (t) 18
01 4. Catmull-Rom Spline Curve Catmull-Rom Spline Curve 의기본적인형태및 Blending Functions / Basis Functions (A) 4 개의제어점에의해생성된 Catmull- Rom Spline Curve 의기본적인형태 19 (B) 7 개의제어점에의해생성된 Catmull- Rom Spline Curve 및접선들 (C) Catmull-Rom Spline Curve 를위한 Blending Functions / Basis Functions
01 4. Catmull-Rom Spline Curve Catmull-Rom Spline Curve 의구현결과 코드 11-4 20
01 5. B-Spline Curve 8 개의제어점 P i 을사용하여구성된 B-Spline Curve 21
01 5. B-Spline Curve 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
01 5. B-Spline Curve Uniform Cubic B-Spline Curve Q i (t) 23
01 5. B-Spline Curve [ 그림 11-13] 에처음과마지막제어점들모두에 3 번중복한 B- Spline Curve 의결과 24
01 5. B-Spline Curve [ 그림 11-13] 에서내부제어점들중하나를 3 번중복한 B- Spline Curve 의결과 25
01 5. B-Spline Curve B-Spline Curve 의 3 가지유형 (A) Open B-Spline Curve (B) Clamped B-Spline Curve (C) Closed B-Spline Curve 26
01 5. B-Spline Curve B-Spline Curve 의구현결과 코드 11-5 27
01 6. Clamped B-Spline Curve Clamped B-Spline Curve 의구현결과 코드 11-6 28
01 7. NURBS Curve 제어점들과 Knot 의관계 29
01 7. NURBS Curve NURBS : 제어점 P 3 에대응하는가중치 w 3 의변경에따른결과 30
01 7. NURBS Curve NURBS Curve 의구현결과 코드 11-7 31
02 Spline 곡면 1. Hermite Spline Surface 2. Bezier Spline Surface 3. B-Spline Surface 4. NURBS(Non-Uniform Rational B-Spline) Surface 32
02 1. Hermite Spline Surface Hermite Spline Curve H x (s, t) 33
02 1. Hermite Spline Surface [g ij ] 의 x 성분분포도 34
02 1. Hermite Spline Surface Hermite Spline Surface H x (s, t) 의구성도 35 A) 4 개의제어점에의해생성된 Hermite Splinez Surface 이기본적인형태 B) 각제어점에생성된접선 Vector 및 2 차미분계수 Vector
02 1. Hermite Spline Surface Hermite Spline Surface 의구현결과 코드 11-8 (A) Wire-frame Hermite Spline Surface: Tension 0.50 B) Wire-frame Hermite Spline Surface: Tension 1.50 36 (C) Wire-frame Hermite Spline Surface: Tension 3.50 (D) Mesh 를채우고조명을적용한 Hermite Spline Surface : Tension 0.50
02 1. Hermite Spline Surface glloadmatrixf 함수의 Prototype glmultimatrixf 함수의 Prototype 37
02 1. Hermite Spline Surface glgetfloatv 함수의 Prototype 38
02 1. Hermite Spline Surface glmap2f 함수의 Prototype 39
02 1. Hermite Spline Surface glmapgrid2f 함수의 Prototype 40
02 1. Hermite Spline Surface glevalmesh2 함수의 Prototype glevalcoord2f 함수의 Prototype 41
02 2. Bezier Spline Surface Bezier Spline Surface C(u, v) 42
02 2. Bezier Spline Surface Bezier Spline Surface 을위한매개변수방향 (u, v) 및 차수 (n, m) Bezier Spline Surface C(u, v) 43
02 2. Bezier Spline Surface 2D Evaluators 를사용한 Wire-frame Bezier Spline Surface 의구현결과 코드 11-9 44
02 2. Bezier Spline Surface 2D Evaluators 를사용하여생성한 Bezier Spline Curve 에 Mesh 를채우고조명을추가한 Bezier Spline Surface 의구현결과 코드 11-10 45
02 3. B-Spline Surface 차수의변화에따른 B-Spline Surface 의변화 (A) (Periodic, Periodic) (B) (Non-Periodic, Non-Periodic) (C) (Periodic, Non-Periodic) (p, q)=(3, 3) (p, q)=(3, 3) (p, q)=(5, 2) 46
02 3. B-Spline Surface B-Spline Surface 의 3 가지유형 (A) Clamped (B) Closed (C) Open 47
02 3. B-Spline Surface Parametric Curve 의 Tension Product 48
02 3. B-Spline Surface B-Spline Surface Q(u, v) 49
02 3. B-Spline Surface Bicubic B-Spline Surface 의구현결과 코드 11-11 50
02 4. NURBS Surface NURBS Surface S(u, v) 51
02 4. NURBS Surface NURBS Surface 의구현결과 코드 11-12 52
02 4. NURBS Surface glunewnurbsrenderer 함수의 Prototype 53
02 4. NURBS Surface glunurbsproperty 함수의 Prototype 54
02 4. NURBS Surface glunurbsproperty 함수의 Prototype 55
02 4. NURBS Surface glunurbsproperty 함수의 Prototype 56
02 4. NURBS Surface glunurbsproperty 함수의 Prototype 57
02 4. NURBS Surface glunurbsproperty 함수의 Prototype 58
02 4. NURBS Surface glubeginsurface 함수의 Prototype 59
02 4. NURBS Surface glunurbssurface 함수의 Prototype 60
02 4. NURBS Surface gluendsurface 함수의 Prototype 61
03 Subdivision 곡면 1. Catmull-Clark Subdivision Surface 2. Doo-Sabin Subdivision Surface 3. Loop Subdivision Surface 62
03 Subdivision 곡면 Subdivision Scheme 의분류 63
03 Subdivision 곡면 육면체 (Cube) 에여러가지종류의 Subdivision 규칙을적용한결과 (A) Original Cube (B) Midpoint Subdivision (C) Catmull-Clark Subdivision 64 (D) Doo-Sabin Subdivision (E) Loop Subdivision (F) 3 Subdivision
03 1. Catmull-Clark Subdivision Surface Catmull-Clark Subdivision 의구현결과예시 65
03 1. Catmull-Clark Subdivision Surface Catmull-Clark Subdivision 의규칙 66
03 1. Catmull-Clark Subdivision Surface Catmull-Clark Subdivision Surface 를위한새로운 Vertex 생성및가중치 67
03 1. Catmull-Clark Subdivision Surface Catmull-Clark Subdivision Surface 의구현결과 코드 11-13 68 (A) Level 0 (B) Level 1 (C) Level 3
03 2. Doo-Sabin Subdivision Surface Doo-Sabin Subdivision Surface 의예시 (A) T 모양의사변형 Mesh 에 2 번의세부적인반복효과적용 (B) Limit Surface 69 (C) Doo-Sabin Subdivision 을육면체 (Cube) 에적용한결과
03 2. Doo-Sabin Subdivision Surface Doo-Sabin Subdivision Matrix S k DS 70
03 2. Doo-Sabin Subdivision Surface Doo-Sabin Subdivision Surface Scheme 71 (A) 기존의점 (Point) 및라인 (Line) 들사이에세부적인 Vertex 들생성 (B) 기존의점 (Point) 들에대한가중치 (Weight) 를기준으로세부적인 Vertex 들중하나를생성
03 2. Doo-Sabin Subdivision Surface Doo-Sabin Subdivision Surface 의구현결과 코드 11-14 (A) Level 0 (B) Level 1 (C) Level 2 (D) Level 3 72
03 3. Loop Subdivision Surface Loop Subdivision Surface 규칙 73 (A) 홀수 Vertex 들을위한 Masks (B) 짝수 Vertex 들을위한 Masks
03 3. Loop Subdivision Surface 기존 Vertex 들에대한위치의선형조합으로새로운위치계산 74
03 3. Loop Subdivision Surface Loop Subdivision Surface 의구현결과 코드 11-15 75 (A) Level 0 (B) Level 1 (C) Level 2
03 3. Loop Subdivision Surface Loop Subdivision Surface 의구현결과 76 (A) Level 3 (B) Level 4 (C) Level 5