Question? Leave a message!




Curve Properties & Conversion, Surface Representations

Curve Properties & Conversion, Surface Representations
Dr.ShaneMatts Profile Pic
Dr.ShaneMatts,United States,Teacher
Published Date:23-07-2017
Website URL
Comment
6.837 Computer Graphics Curve Properties & Conversion, Surface Representations vectorportal.com 6.837 – Matusik 1Cubic Bezier Splines • P(t) = (1-t)³ P1 + 3t(1-t)² P2 + 3t²(1-t) P3 + t³ P4 2Bernstein Polynomials • For Bézier curves, the basis polynomials/vectors are Bernstein polynomials • For cubic Bezier curve: B1(t)=(1-t)³ B2(t)=3t(1-t)² B3(t)=3t²(1-t) B4(t)=t³ (careful with indices, many authors start at 0) • Defined for any degree 3General Spline Formulation • Geometry: control points coordinates assembled into a matrix (P1, P2, …, Pn+1) • Power basis: the monomials 1, t, t2, ... • Cubic Bézier: 4Questions? 5Linear Transformations & Cubics • What if we want to transform each point on the curve with a linear transformation M? P’(t)= M 6Linear Transformations & Cubics • What if we want to transform each point on the curve with a linear transformation M? – Because everything is linear, it is the same as transforming only the control points P’(t)= M = M 7Affine Transformations • Homogeneous coordinates also work – Means you can translate, rotate, shear, etc. – Note though that you need to normalize P’ by 1/w’ P’(t)= M 1 1 1 1 = M 1 1 1 1 8Questions? 9The Plan for Today • Differential Properties of Curves & Continuity • B-Splines • Surfaces – Tensor Product Splines – Subdivision Surfaces – Procedural Surfaces – Other 10Differential Properties of Curves • Motivation – Compute normal for surfaces – Compute velocity for animation – Analyze smoothness Image courtesy of Kristian Molhave on Wikimedia Commons. License: CC- BY-SA. This content is excluded from our Creative Commons license. For more information, see http://ocw.mit.edu/help/faq-fair-use/. 11Velocity • First derivative w.r.t. t • Can you compute this for Bezier curves? P(t) = (1-t)³ P1 + 3t(1-t)² P2 + 3t²(1-t) P3 + t³ P4 • You know how to differentiate polynomials... 12Velocity • First derivative w.r.t. t • Can you compute this for Bezier curves? P(t) = (1-t)³ P1 + 3t(1-t)² P2 + 3t²(1-t) P3 + t³ P4 • P’(t) = -3(1-t)2 P1 Sanity check: t=0; t=1 + 3(1-t) 2 -6t(1-t) P2 + 6t(1-t)-3t 2 P3 + 3t 2 P4 13Linearity? • Differentiation is a linear operation – (f+g)’=f’+g’ – (af)’=a f’ • This means that the derivative of the basis is enough to know the derivative of any spline. • Can be done with matrices – Trivial in monomial basis – But get lower-order polynomials 14Tangent Vector • The tangent to the curve P(t) can be defined as T(t)=P’(t)/P’(t) – normalized velocity, T(t) = 1 • This provides us with one orientation for swept surfaces later Courtesy of Seth Teller. 15Curvature Vector • Derivative of unit tangent – K(t)=T’(t) – Magnitude K(t) is constant for a circle – Zero for a straight line • Always orthogonal to tangent, ie. 16Geometric Interpretation • K is zero for a line, constant for circle – What constant? 1/r • 1/K(t) is the radius of the circle that touches P(t) at t and has the same curvature as the curve 17Curve Normal • Normalized curvature: T’(t)/T’(t) 18Questions? 19Orders of Continuity • C0 = continuous C0 – The seam can be a sharp kink • G1 = geometric continuity – Tangents point to the same direction at the seam G1 • C1 = parametric continuity – Tangents are the same at the seam, implies G1 C1 • C2 = curvature continuity – Tangents and their derivatives are the same 20