Title: Curves
1Curves Surfaces
2Today
- Motivation
- Limitations of Polygonal Models
- Gouraud Shading Phong Normal Interpolation
- Some Modeling Tools Definitions
- Curves
- Surfaces / Patches
- Subdivision Surfaces
3Limitations of Polygonal Meshes
- Planar facets ( silhouettes)
- Fixed resolution
- Deformation is difficult
- No natural parameterization (for texture mapping)
4Can We Disguise the Facets?
5Gouraud Shading
- Instead of shading with the normal of the
triangle, shade the vertices with the average
normal and interpolate the color across each face
Illusion of a smooth surface with smoothly
varying normals
6(No Transcript)
710K facets
1K facets
10K smooth
1K smooth
8Better, but not always good enough
- Still low, fixed resolution (missing fine
details) - Still have polygonal silhouettes
- Intersection depth is planar (e.g. ray
visualization) - Collisions problems for simulation
- Solid Texturing problems
- ...
9Some Non-Polygonal Modeling Tools
Extrusion
Surface of Revolution
Spline Surfaces/Patches
Quadrics and other implicit polynomials
10(No Transcript)
11Questions?
12Today
- Motivation
- Curves
- What's a Spline?
- Linear Interpolation
- Interpolation Curves vs. Approximation Curves
- Bézier
- BSpline (NURBS)
- Surfaces / Patches
- Subdivision Surfaces
13Definition What's a Spline?
- Smooth curve defined by some control points
- Moving the control points changes the curve
Interpolation
Bézier (approximation)
BSpline (approximation)
14Interpolation Curves / Splines
www.abm.org
15(No Transcript)
16Interpolation Curves
- Curve is constrained to pass through all control
points - Given points P0, P1, ... Pn, find lowest degree
polynomial which passes through the points x(t)
an-1tn-1 .... a2t2 a1t a0 y(t)
bn-1tn-1 .... b2t2 b1t b0
17(No Transcript)
18(No Transcript)
19(No Transcript)
20Cubic Bézier Curve
- de Casteljau's algorithm for constructing Bézier
curves
t
t
t
t
t
t
21(No Transcript)
22(No Transcript)
23(No Transcript)
24(No Transcript)
25Cubic BSplines
- 4 control points
- Locally cubic
- Curve is not constrained to pass through any
control points
A BSpline curve is also bounded by the convex
hull of its control points.
26(No Transcript)
27Cubic BSplines
28Cubic BSplines
- Can be chained together
- Better control locally (windowing)
29Connecting Cubic BSpline Curves
- Whats the relationship between
- the of control points, and
- the of cubic BSpline subcurves?
30BSpline Curve Control Points
Default BSpline
BSpline with Discontinuity
BSpline which passes through end points
Repeat interior control point
Repeat end points
31Bézier is not the same as BSpline
Bézier
BSpline
32Bézier is not the same as BSpline
- Relationship to the control points is different
Bézier
BSpline
33Converting between Bézier BSpline
original control points as Bézier
new BSpline control points to match Bézier
new Bézier control points to match BSpline
original control points as BSpline
34Converting between Bézier BSpline
- Using the basis functions
35NURBS (generalized BSplines)
- BSpline uniform cubic BSpline
- NURBS Non-Uniform Rational BSpline
- non-uniform different spacing between the
blending functions, a.k.a. knots - rational ratio of polynomials (instead of
cubic)
36Questions?
37Today
- Motivation
- Spline Curves
- Spline Surfaces / Patches
- Tensor Product
- Bilinear Patches
- Bezier Patches
- Subdivision Surfaces
38(No Transcript)
39Bilinear Patch
40(No Transcript)
41Bicubic Bezier Patch
42Editing Bicubic Bezier Patches
Curve Basis Functions
Surface Basis Functions
43Bicubic Bezier Patch Tessellation
- Assignment 8 Given 16 control points and a
tessellation resolution, create a triangle mesh
resolution5x5 vertices
resolution11x11 vertices
resolution41x41 vertices
44Modeling with Bicubic Bezier Patches
- Original Teapot specified with Bezier Patches
45Modeling Headaches
- Original Teapot model is not "watertight"inters
ecting surfaces at spout handle, no bottom, a
hole at the spout tip, a gap between lid base
46(No Transcript)
47(No Transcript)
48Today
- Review
- Motivation
- Spline Curves
- Spline Surfaces / Patches
- Subdivision Surfaces
49Chaikin's Algorithm
50Doo-Sabin Subdivision
51(No Transcript)
52(No Transcript)
53(No Transcript)
54(No Transcript)
55(No Transcript)
56Next Tuesday (no class Thursday!)
- Animation I
- Particle Systems