Home | Lehre | Videos | Texte | Vorträge | Software | Person | Impressum, Datenschutzerklärung | Blog
Continued from Last Week
-
Antialiasing and interpolation
Curves
-
Curves as a versatile [vielseitige] geometric primitive [Grundform]
-
Fixed shapes / parametrized shapes / free-form shapes
-
Cubic curves
-
Intuitive control of cubic curves? demo with OpenOffice spreadsheet
-
Hermite curves
-
A special way of representing [darstellen] cubic curves [kubische Kurven]
-
Defined by start point, end point, initial and final velocity vector
-
p(t) = p0(2t3-3t2+1) + v0(t3-2t2+t)
+ v1(t3-t2) + p1(-2t3+3t2)
-
Demo with OpenOffice spreadsheet
-
Bézier curves
-
Another special way of representing cubic curves
-
Defined by start point, end point, and two intermediate points that act
like magnets
-
p(t) = p0(1-t)3 + p13(1-t)2t
+ p23(1-t)t2 + p3t3
-
Curve starts tangent to p1-p0 and ends
tangent to p3-p2
-
Demo with OpenOffice spreadsheet, Inkscape, and Cinema 4D
-
.NET: DrawBezier
-
Curves formed by joining several cubic segments
-
Geometric (dis-)continuity
-
.NET: DrawBeziers
-
Catmull-Rom splines
-
Given: a sequence of points to be converted
-
Objective [Arbeitsziel]: Compute a sequence of Hermite curves interpolating
those points
-
Solution: It remains to define the velocity vectors of the Hermite representation.
For the start point and the end point choose the difference vector between
this point and its neighbor. For each other (i.e., interior) point choose
half the difference vector between the preceding point and the next point.
-
.NET: DrawCurve
-
Mouse events to be used for drawing (present in Windows Forms as virtual
functions, ready for overriding)
-
OnMouseDown
-
OnMouseUp
-
OnMouseMove
-
Outlook
-
B-spline curves and surfaces, demo with Cinema 4D and Maya
-
NURBS curves and surfaces, demo with Maya
-
spline curves for animation, demo with Cinema 4D