CS 184: COMPUTER GRAPHICS

PREVIOUS < - - - - > CS 184 HOME < - - - - > CURRENT < - - - - > NEXT

Lecture #15 -- Mon 3/16/2009.

IDEA:  Try to solve this problem in the top-down view of the track; adjust heights later. -> Resulting control polygon.

The next assignment involves modeling a rollercoaster track and moving a car (and a camera) along it.  Thus we need to learn about spave curves!

Differential Geometry of 3D Space Curves

Analysis of Curves (as compared to "Design" or "Data Fitting")
• Intrinsic Curve Properties (defined at each local point on the curve)
• - - Vectors: Tangent, Normal, Binormal;
• - - Planes: Osculating, Normal, Rectifying;
• - - Scalars: Curvature, Torsion.
• Extrinsic Curve Properties (overall, global values)
• - - Arc-length;
• - - Planarity, Linearity;
• - - Closedness, Turning Number (in 2D), Knot Type (in 3D);
• - - Highest polynomial degree, lowest continuity type, # of inflection points.

Construction of the Frenet Frame (Ref. frame for intrinsic properties)

• Finding the Tangent  T -- velocity -- p'(t) -- normalize ...
• Normal Plane -- from acceleration = change of velocity -- p''(t) -- two components:
• in line with tangent = true acceleration.
• perpendicular to tangent = turning. ==> Defines principal normal  -- points in the direction that curve bends.
• Osculating Plane -- spanned by tangent and principal normal vectors;  = best-fitting plane.
• Osculating Circle -- best-fitting circle in that plane; -- defines curvature = 1/Radius
• Binormal  B -- perpendicular on osculating plane; -- axis around which tangent vector turns

Serret - Frenet Relations

• What is Curvature ? -- rate of rotation around B (1/R of the osculating circle)
• What is Torsion ? -- rate of rotation of osculating plane (around tangent T)
• Inflection points -- where curvature = 0 (==> N, B, undetermined)

Sweeps along Polylines (and piecewise linearly approximated curves)

Examples of mitered joints: 1 2 3 4
Default: Cross-section remains perpendicular to tangent vector.
The "natural" orientation of the cross section based on the Frenet frame.
Azimuth determines alternate orientations around the tangent vector.
Construction of "ribs" in angle-divider plane at all segment junctions, -- stretched by 1/cos(half-angle) in direction of normal vector
Minimizing torsion by projectin forward from one rib plane to the next.
Finding minimal amount of twist that closes a sweep loop.

[More on that in CS284 -- Next offering: Fall 2009. -- Undergraduate students who do well in CS 184 are welcome]

Skim:   Shirley, 2nd Ed:  Ch 15

Study: ( i.e., try to understand fully, so that you can answer questions on an exam):
Shirley, 2nd Ed:
Ch 15.6-15.7

Programming Assignment 7: due (electronically submitted) beforeWednesday 4/1, 11pm <== ASSIGNMENT CAN BE DONE IN PAIRS !

ADVICE:  Start the next assignment as soon as possible, so that you can ask relevant questions and obtain good feedback and help BEFORE Spring Break!

PREVIOUS < - - - - > CS 184 HOME < - - - - > CURRENT < - - - - > NEXT