Title: Curves and Surfaces
1Curves and Surfaces
2Representation of Curves Surfaces
- Polygon Meshes
- Parametric Cubic Curves
- Parametric Bi-Cubic Surfaces
- Quadric Surfaces
- Specialized Modeling Techniques
3The Teapot
4Representing Polygon Meshes
- explicit representation
- by a list of vertex coordinates
- pointers to a vertex list
- pointers to an edge list
5Pointers to a Vertex List
6Pointers to an Edge List
7Plane Equation
- AxByCzD0
- And (A, B, C) means the normal vector
- so, given points P1, P2, and P3 on the plane
- (A, B, C) P1P2 ? P1P3
- What happened if (A, B, C) (0, 0, 0)?
- The distance from a vertex (x, y, z) to the plane
is
8Parametric Cubic Curves
- The cubic polynomials that define a curve segment
are of the form
9Parametric Cubic Curves
- The curve segment can be rewrite as
- where
10Continuity between curve segments
11Tangent Vector
12Continuity between curve segments
- G0 geometric continuity
- two curve segments join together
- G1 geometric continuity
- the directions (but not necessarily the
magnitudes) of the two segments tangent vectors
are equal at a join point
13Continuity between curve segments
- C1 continuous
- the tangent vectors of the two cubic curve
segments are equal (both directions and
magnitudes) at the segments join point - Cn continuous
- the direction and magnitude of through the nth
derivative are equal at the join point
14Continuity between curve segments
15Continuity between curve segments
16Three Types of Parametric Cubic Curves
- Hermite Curves
- defined by two endpoints and two endpoint tangent
vectors - Bézier Curves
- defined by two endpoints and two control points
which control the endpoint tangent vectors - Splines
- defined by four control points
17Parametric Cubic Curves
-
- Rewrite the coefficient matrix as
- where M is a 4?4 basis matrix, G iscalled the
geometry matrix - so
18Parametric Cubic Curves
- where is called the blending
function
19Hermite Curves
- Given the endpoints P1 and P4 and tangent vectors
at R1 and R4 - What are
- Hermite basis matrix MH
- Hermite geometry vector GH
- Hermite blending functions BH
- By definition
20Hermite Curves
21Hermite Curves
22Bezier Curves
- Four control points
- Two endpoints, two direction points
- Length of lines from each endpoint to its
direction point representing the speed with which
the curve sets off towards the direction point - Fig. 4.8, 4.9
23Bézier Curves
- Given the endpoints and and two control points
and which determine the endpoints tangent
vectors, such that - What is
- Bézier basis matrix MB
- Bézier geometry vector GB
- Bézier blending functions BB
24Bézier Curves
25Bézier Curves
26Subdividing Bézier Curves
-
- How to draw the curve ?
- How to convert it to be line-segments ?
27Bezier Curves
- Constructing a Bezier curve
- Fig. 4.10-13
- Finding mid-points of lines
28Bezier Curves
29Convex Hull
30Spline
- the polynomial coefficients for natural cubic
splines are dependent on all n control points - has one more degree of continuity than is
inherent in the Hermite and Bézier forms - moving any one control point affects the entire
curve - the computation time needed to invert the matrix
can interfere with rapid interactive reshaping of
a curve
31B-Spline
32Uniform NonRational B-Splines
- cubic B-Spline
- has m1 control points
- has m-2 cubic polynomial curve segments
- uniform
- the knots are spaced at equal intervals of the
parameter t - non-rational
- not rational cubic polynomial curves
33Uniform NonRational B-Splines
- Curve segment Qi is defined by points
thus - B-Spline geometry matrix
- if
- then
34Uniform NonRational B-Splines
- so B-Spline basis matrix
- B-Spline blending functions
-
35NonUniform NonRational B-Splines
- the knot-value sequence is a nondecreasing
sequence - allow multiple knot and the number of identical
parameter is the multiplicity - Ex. (0,0,0,0,1,1,2,3,4,4,5,5,5,5)
- so
36NonUniform NonRationalB-Splines
- Where is the jth-order blendingfunction
for weighting control point pi
37Knot Multiplicity Continuity
- Since Q(ti) is within the convex hull of Pi-3,
Pi-2, and Pi-1 - If titi1, Q(ti) is within the convex hull of
Pi-3, Pi-2, and Pi-1 and the convex hull of
Pi-2, Pi-1, and Pi, so it will lie on Pi-2Pi-1 - If titi1ti2, Q(ti) will lie on pi-1
- If titi1ti2ti3, Q(ti) will lie on both Pi-1
and Pi, and the curve becomes broken
38Knot Multiplicity Continuity
- multiplicity 1 C2 continuity
- multiplicity 2 C1 continuity
- multiplicity 3 C0 continuity
- multiplicity 4 no continuity
39NURBSNonUniform Rational B-Splines
- rational
- x(t), y(t) and z(t) are defined as the ratio of
two cubic polynomials - rational cubic polynomial curve segments are
ratios of polynomials - can be Bézier, Hermite, or B-Splines
40Parametric Bi-Cubic Surfaces
- Parametric cubic curves are
- so parametric bi-cubic surfaces are
- If we allow the points in G to vary in 3D along
some path, then - since Gi(t) are cubics
41Parametric Bi-Cubic Surfaces
42Hermite Surfaces
43Bézier Surfaces
44B-Spline Surfaces
45Normals to Surfaces
46Quadric Surfaces
- implicit surface equation
- an alternative representation
47Quadric Surfaces
- advantages
- computing the surface normal
- testing whether a point is on the surface
- computing z given x and y
- calculating intersections of one surface with
another