13472J/1.128J/2158J/16940J COMPUTATIONAL GEOMETRY Lecture 2 Kwanghee Ko T Maekawa N.M. Patrikalakis Massachusetts Institute of Technology Cambridge, MA 02139-4307, USA Copyright 2003 Massachusetts Institute of Technology Contents 2 Differential geometry of curves 2.1 Definition of curves 2 2.1.1 Plane curves 2.1.2 Space curves 4 2.2 Arc length 2.3 Tangent vector 2.4 Normal vector and curvature 2.5 Binormal vector and torsion 12 2.6 Serret-Frenet Bibliography Reading in the Textbook 3 Chapter 2, pp 36- pp 48
13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY Lecture 2 Kwanghee Ko T. Maekawa N. M. Patrikalakis Massachusetts Institute of Technology Cambridge, MA 02139-4307, USA Copyright c 2003 Massachusetts Institute of Technology Contents 2 Differential geometry of curves 2 2.1 Definition of curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.1.1 Plane curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2.1.2 Space curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Arc length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.3 Tangent vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.4 Normal vector and curvature . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.5 Binormal vector and torsion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.6 Serret-Frenet Formulae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Bibliography 16 Reading in the Textbook • Chapter 1, pp.1 - pp.3 • Chapter 2, pp.36 - pp.48 1
Lecture 2 Differential geometry of curves 2.1 Definition of curves 2.1.1 Plane curves Implicit curves f(, y)=0 Example:x2+y2=a2 It is difficult to trace implicit curves It is easy to check if a point lies on the curve Multi-valued and closed curves can be represented It is easy to evaluate tangent line to the curve when the curve has a vertical or near vertical tangent Axis dependent(Difficult to transform to another coordinate system) Example:x3+y=3xy: Folium of Descartes(see Figure 2.1a) Let f(e, y= +y-3.ry=0, f(0,0)=0=(a, y)=(0, 0) lies on the curve Example: If we translate by(1, 2)and rotate the axes by 0=atan(3), the hyperbola x-5=l, shown in Figure 2. 1(b), will become 2x--72ry+23y-+140.T-20y+50=0 Explicit curves y= f(a) One of the variables is expressed in terms of the other It is easy to trace explicit curves It is easy to check if a point lies on the curve Multi-valued and closed curves can not be easily represented It is difficult to evaluate tangent line to the curve when the curve has a vertical or near vertical tangent
Lecture 2 Differential geometry of curves 2.1 Definition of curves 2.1.1 Plane curves • Implicit curves f(x, y) = 0 Example: x 2 + y 2 = a 2 – It is difficult to trace implicit curves. – It is easy to check if a point lies on the curve. – Multi-valued and closed curves can be represented. – It is easy to evaluate tangent line to the curve when the curve has a vertical or near vertical tangent. – Axis dependent. (Difficult to transform to another coordinate system). Example: x 3 + y 3 = 3xy : Folium of Descartes (see Figure 2.1a) Let f(x, y) = x 3 + y 3 − 3xy = 0, f(0, 0) = 0 ⇒ (x, y) = (0, 0) lies on the curve Example: If we translate by (1,2) and rotate the axes by θ = atan( 3 4 ), the hyperbola x 2 4 − y 2 2 = 1, shown in Figure 2.1(b), will become 2x 2 −72xy+23y 2 +140x−20y+50 = 0. • Explicit curves y = f(x) One of the variables is expressed in terms of the other. Example: y = x 2 – It is easy to trace explicit curves. – It is easy to check if a point lies on the curve. – Multi-valued and closed curves can not be easily represented. – It is difficult to evaluate tangent line to the curve when the curve has a vertical or near vertical tangent. 2
asymptote line Figure 2.1:(a) Descartes;(b)Hyperbola Axis dependent. ( Difficult to transform to another coordinate system) Example: If the circle is represented by an explicit equation, it must be divided into two segments, with y=+Vr2-x2 for the upper half and y=-Vr2-a2 for the low half, see Figure 2.2. This kind of segmentation creates cases which are inconvenient in computer programming and graphics Figure 2.2: Description of a circle with an explicit equation Note: The derivative of y=va at the origin a =0 is infinite, see Figure 2.3 · Parametric curves x=x(t),y=y(t),t1≤t≤t 2D coordinates (, y) can be expressed as functions of a parameter t Example: a= a cos(t) sin(t),0≤t<2r
-3 -2 -1 0 1 2 -3 -2 -1 0 1 2 X Y asymptote line x+y+1=0 multi-valued -3 -2 -1 0 1 2 3 -2 -1 0 1 2 3 4 X Y Figure 2.1: (a) Descartes; (b) Hyperbola. – Axis dependent. (Difficult to transform to another coordinate system). Example: If the circle is represented by an explicit equation, it must be divided into two segments, with y = + √ r 2 − x 2 for the upper half and y = − √ r 2 − x 2 for the lower half, see Figure 2.2. This kind of segmentation creates cases which are inconvenient in computer programming and graphics. y = + r − x 2 2 y = − r − x 2 2 x y o Figure 2.2: Description of a circle with an explicit equation. Note: The derivative of y = √ x at the origin x = 0 is infinite, see Figure 2.3. • Parametric curves x = x(t), y = y(t), t1 ≤ t ≤ t2 2D coordinates (x, y) can be expressed as functions of a parameter t. Example: x = a cos(t), y = a sin(t), 0 ≤ t < 2π 3
S→ 0,y′ Figure 2.3: Vertical slopes for explicit curves involve non-polynomial functions It is easy to trace parametric curves It is relatively difficult to check if a point lies on the curve Closed and multi-valued curves are eas It is easy to evaluate tangent line to the curve when the curve has a vertical or near Axis independent.(Easy to transform to another coordinate system) Example: Folium of Descartes, see Figure 2.1, can be expressed as r(t) ∞<t<∞→ easy to trace (t)=ao solve for t= plug t into y(t)= yo need to solve a nonlinear equation to check if a point lies on the curve Explicit curve y= Va can be expressed as x=t2, y=t(t> 0) =(t2,t), unit tangent vector t att=0,t=(0,1) Therefore there is no problem representing a vertical tangent computationally 2.1.2 Space curves In 3D, a single equation generally represents a surface. For example x2+y2+22
y x y = √ x; y 0 = 1/2 √ x; as x → 0, y 0 → ∞ Figure 2.3: Vertical slopes for explicit curves involve non-polynomial functions. – It is easy to trace parametric curves. – It is relatively difficult to check if a point lies on the curve. – Closed and multi-valued curves are easy to represent. – It is easy to evaluate tangent line to the curve when the curve has a vertical or near vertical tangent. – Axis independent. (Easy to transform to another coordinate system) Example: Folium of Descartes, see Figure 2.1, can be expressed as: r(t) = 3t 1+t 3 , 3t 2 1+t 3 − ∞ < t < ∞ ⇒ easy to trace x(t) = x0 ⇒ solve for t ⇒ plug t into y(t) = y0 ⇒ need to solve a nonlinear equation to check if a point lies on the curve. Explicit curve y = √ x can be expressed as x = t 2 , y = t (t ≥ 0). r = (t 2 ,t), r˙ = (2t, 1) unit tangent vector t = (2t, 1) √ 4t 2 + 1 at t = 0, t = (0, 1) Therefore there is no problem representing a vertical tangent computationally. 2.1.2 Space curves • Implicit curves In 3D, a single equation generally represents a surface. For example x 2 + y 2 + z 2 = a 2 is a sphere. 4
Thus, the curve appears as the intersection of two surfaces F(x,y,2)=0∩G(x,y,2)=0 Example: Intersection of the two quadric surfaces z ay and y2= za gives cubic parabola. (These two surfaces intersect not only along the cubic parabola but also along the a-axis. · Explicit curves If the implicit equations can be solved for two of the variables in terms of the third, say for y and z in terms of a, we get y=y( ) z= a(ar) Each of the equations separately represents a cylinder projecting the curve onto one of the coordinate planes. Therefore intersection of the two cylinders represents the curve. Example: Intersection of the two cylinders y=x2, x=x gives a cubic parabola · Parametric curves x=x(t),y=y(t),z=z(t),t1≤t≤t The 3D coordinates (a, y, a) of the point can be expressed on functions of parameter t Here functions a(t), y(t), a(t) have continuous derivatives of the rth order, and the parameter t is restricted to some interval called the parameter space(i.e, tistst2 In this case the curve is said to be of class r, denoted as cr n vector notation where r=(a, y, a), r(t)=(a(t),y(t),a(t)) Example: Cubic parabola Example: Circular helix, see Fig. 2.4 x三aCos (t), y=asin(t),a Using v=tan 2 COS cos t 1+ cos t →COst1- Therefore the following parametrization will give the same circular helix r=a 1+v21+,2btam-1 0≤<∞
Thus, the curve appears as the intersection of two surfaces. F(x, y, z) = 0 ∩ G(x, y, z) = 0 Example: Intersection of the two quadric surfaces z = xy and y 2 = zx gives cubic parabola. (These two surfaces intersect not only along the cubic parabola but also along the x-axis.) • Explicit curves If the implicit equations can be solved for two of the variables in terms of the third, say for y and z in terms of x, we get y = y(x), z = z(x) Each of the equations separately represents a cylinder projecting the curve onto one of the coordinate planes. Therefore intersection of the two cylinders represents the curve. Example: Intersection of the two cylinders y = x 2 , z = x 3 gives a cubic parabola. • Parametric curves x = x(t), y = y(t), z = z(t), t1 ≤ t ≤ t2 The 3D coordinates (x, y, z) of the point can be expressed on functions of parameter t. Here functions x(t), y(t), z(t) have continuous derivatives of the rth order, and the parameter t is restricted to some interval called the parameter space (i.e., t1 ≤ t ≤ t2). In this case the curve is said to be of class r, denoted as C r . In vector notation: r = r(t) where r = (x, y, z), r(t) = (x(t), y(t), z(t)) Example: Cubic parabola x = t, y = t 2 , z = t 3 Example: Circular helix, see Fig. 2.4. x = a cos(t), y = a sin(t), z = bt, 0 ≤ t ≤ π Using v = tan t 2 v = tan t 2 = s 1 − cost 1 + cost ⇒ v 2 = 1 − cost 1 + cost ⇒ cost = 1 − v 2 1 + v 2 ⇒ sin t = 2v 1 + v 2 Therefore the following parametrization will give the same circular helix. r = a 1 − v 2 1 + v 2 , 2av 1 + v 2 , 2btan−1 v ! , 0 ≤ v < ∞ 5