The Essentials of CAGD Chapter 8: Shape Gerald Farin & Dianne - - PowerPoint PPT Presentation

the essentials of cagd
SMART_READER_LITE
LIVE PREVIEW

The Essentials of CAGD Chapter 8: Shape Gerald Farin & Dianne - - PowerPoint PPT Presentation

The Essentials of CAGD Chapter 8: Shape Gerald Farin & Dianne Hansford CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/essentials-cagd 2000 c Farin & Hansford The Essentials of CAGD 1 / 29


slide-1
SLIDE 1

The Essentials of CAGD

Chapter 8: Shape Gerald Farin & Dianne Hansford

CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/essentials-cagd

c 2000

Farin & Hansford The Essentials of CAGD 1 / 29

slide-2
SLIDE 2

Outline

1

Introduction to Shape

2

The Frenet Frame

3

Curvature and Torsion

4

Surface Curvatures

5

Reflection Lines

Farin & Hansford The Essentials of CAGD 2 / 29

slide-3
SLIDE 3

Introduction to Shape

Surface geometry with reflection lines Often times a designer thinks of a curve in terms such as “fair,” “smooth,” or “sweet” How can such concepts be incorporated into computer programs? The central concept of any kind of shape description is curvature This chapter investigates shape analysis

Farin & Hansford The Essentials of CAGD 3 / 29

slide-4
SLIDE 4

The Frenet Frame

Discuss shape of a curve in local terms – Shape at a particular point x(t) Create a local coordinate system at x(t) – Use to express local curve properties Base system on first and second derivatives of the curve: ˙ x(t) and ¨ x(t)

Farin & Hansford The Essentials of CAGD 4 / 29

slide-5
SLIDE 5

The Frenet Frame

Local coordinate system (frame) defined by 3 vectors: – unit length and orthogonal t = ˙ x(t) ˙ x(t) tangent b = ˙ x(t) ∧ ¨ x(t) ˙ x(t) ∧ ¨ x(t) binormal n = b ∧ t normal Called the Frenet frame at x(t)

Farin & Hansford The Essentials of CAGD 5 / 29

slide-6
SLIDE 6

The Frenet Frame

Note: if either ˙ x(t) = 0

  • r

˙ x(t) ∧ ¨ x(t) = 0 ⇒ Frenet frame not defined Planar curves: binormal vector is constant

Farin & Hansford The Essentials of CAGD 6 / 29

slide-7
SLIDE 7

The Frenet Frame

F F F F F F F F F F F F F F F

Let x(t) trace out points on curve Corresponding Frenet frames also slide along the curve Application: Positioning objects along a curve –Letter always at the same location relative to the Frenet frame

Farin & Hansford The Essentials of CAGD 7 / 29

slide-8
SLIDE 8

The Frenet Frame

Example:

Farin & Hansford The Essentials of CAGD 8 / 29

slide-9
SLIDE 9

Curvature and Torsion

How is the Frenet frame related to the shape of a curve? Move along the curve and observe how frame changes – More the curve is bent ⇒ the faster the frame will change Rate of change of the unit tangent vector t denotes the curvature of the curve – Straight line: curvature is zero – Circle: curvature is constant Curvature denoted by κ κ(t) = ˙ x(t) ∧ ¨ x(t) ˙ x(t)3

Farin & Hansford The Essentials of CAGD 9 / 29

slide-10
SLIDE 10

Curvature and Torsion

Curvature related to circle that best approximates the curve at x(t) – Called the osculating circle – Radius ρ = 1/κ – Center c(t) = x(t) + ρ(t)n(t) Osculating circle lies in the

  • sculating plane

– Spanned by t and n

Farin & Hansford The Essentials of CAGD 10 / 29

slide-11
SLIDE 11

Curvature and Torsion

Example: κ(0) = 2 3 and κ(1) = 0 Agrees nicely with intuitive notion of “curvedness” Center of the osculating circle at t = 0: c(0) = 3/2

  • c(0) undefined since ρ = 1/0

Farin & Hansford The Essentials of CAGD 11 / 29

slide-12
SLIDE 12

Curvature and Torsion

For the special case of B´ ezier curves κ(0) = 2n − 1 n area[b0, b1, b2] b1 − b03 κ(0) = 0 if b0, b1, b2 are collinear κ(1) = 2n − 1 n area[bn−2, bn−1, bn] bn − bn−13 Curvature at parameter values other than 0 or 1 ⇒ Subdivide at the desired parameter value and proceed as above

Farin & Hansford The Essentials of CAGD 12 / 29

slide-13
SLIDE 13

Curvature and Torsion

By definition a 3D curve has nonnegative curvature For 2D curves: may assign a sign to curvature κ(t) = det

  • ˙

x(t) ¨ x(t)

  • ˙

x(t)3 Signed curvature ⇒ inflection points – Where the curvature changes sign – For B´ ezier curves: area[b0, b1, b2] can be assigned a sign in 2D – Sign does not actually belong to the curvature Indication of change in relation to the right-hand rule

Farin & Hansford The Essentials of CAGD 13 / 29

slide-14
SLIDE 14

Curvature and Torsion

Example:

area[b0, b1, b2] = 1 2 det   1 1 1 1 1 1   = −1 2

b1 − b0 = 1 κ(0) = 2 · 2 3 · −1 2 = −2 3 κ(1) = 4 3 1 2 det   1 1 1 1 1 1 1 2   = 2 3 Curvature is continuous along cubic polynomial ⇒ Curvature zero somewhere

Farin & Hansford The Essentials of CAGD 14 / 29

slide-15
SLIDE 15

Curvature and Torsion

max: 0.002 min: -0.038 max: 0.000 min: -0.035

The curvature of a curve is the most significant descriptor of its shape Most commercial systems allow a user to check the shape of a curve by displaying its curvature plot – The graph of κ(t)

Farin & Hansford The Essentials of CAGD 15 / 29

slide-16
SLIDE 16

Curvature and Torsion

The torsion τ measures the change in a curve’s binormal vector τ(t) = det[˙ x,¨ x, x ˙˙˙] ˙ x ∧ ¨ x2 The binormal of a planar curve is constant ⇒ a quadratic curve has zero torsion For B´ ezier curves: τ(0) = 3 2 n − 2 n volume[b0, b1, b2, b3] area[b0, b1, b2]2

Farin & Hansford The Essentials of CAGD 16 / 29

slide-17
SLIDE 17

Surface Curvatures

Point on surface: x(u, v) Normal: n(u, v) Plane P through x containing n intersects the surface in a planar curve ⇒ a normal section of x Compute signed curvature of normal section at x – Called normal curvature κP

Farin & Hansford The Essentials of CAGD 17 / 29

slide-18
SLIDE 18

Surface Curvatures

Rotate P around n For each new position of P ⇒ New normal section ⇒ New normal curvature κmax: largest normal curvature κmin: smallest ⇒ Principal curvatures at x If κmin and κmax both positive

  • r both negative

⇒ x called an elliptic point (Sphere and ellipsoid: all points elliptic) Sketch shows center of each

  • sculating circle

Farin & Hansford The Essentials of CAGD 18 / 29

slide-19
SLIDE 19

Surface Curvatures

κmin and κmax are of opposite sign ⇒ x called a hyperbolic point Also called saddle point All points on hyperboloids and bilinear patches are hyperbolic Best “real life” example of surfaces with hyperbolic points: potato chips

Farin & Hansford The Essentials of CAGD 19 / 29

slide-20
SLIDE 20

Surface Curvatures

κmin or κmax is zero x is called a parabolic point Examples: cylinders or cones

Farin & Hansford The Essentials of CAGD 20 / 29

slide-21
SLIDE 21

Surface Curvatures

Three cases succinctly described by K = κminκmax Called Gaussian curvature

1

Elliptic point: K > 0

2

Hyperbolic point: K < 0

3

Parabolic point: K = 0 Most surfaces are not composed entirely of one type of Gaussian curvature Developable surfaces: surfaces with K = 0 everywhere

Farin & Hansford The Essentials of CAGD 21 / 29

slide-22
SLIDE 22

Surface Curvatures

Computing Gaussian curvature: F = det xuxu xuxv xuxv xvxv

  • First fundamental form

S = det nxu,u nxu,v nxu,v nxv,v

  • Second fundamental form

K = S F

Farin & Hansford The Essentials of CAGD 22 / 29

slide-23
SLIDE 23

Surface Curvatures

Gaussian curvature doesn’t say everything about shape Sketch: intuitively quite curved yet κmin = 0 everywhere

Farin & Hansford The Essentials of CAGD 23 / 29

slide-24
SLIDE 24

Surface Curvatures

More shape measures: Mean curvature M = 1 2[κmin + κmax] Computed as M = [nxvv]x2

u − 2[nxuv][xuxv] + [nxuu]x2 v

F Minimal surfaces: mean curvature zero – Such surfaces resemble the shape of soap bubbles Absolute curvature A = |κmin| + |κmax| Measures the curvature of a surface in the most reliable way from an intuitive viewpoint

Farin & Hansford The Essentials of CAGD 24 / 29

slide-25
SLIDE 25

Surface Curvatures

RMS (root mean square) curvature R =

  • κ2

min + κ2 max = R =

  • 4M2 − 2K

Left: a digitized vessel Right: RMS curvatures of a B-spline approximation

Farin & Hansford The Essentials of CAGD 25 / 29

slide-26
SLIDE 26

Reflection Lines

Surface curvatures – Gaussian, Mean, Absolute, RMS Not necessarily intuitive to designers trying to create “beautiful” shapes A different surface tool is used more often Based on the simulation of an automotive design studio – Car prototype built – Placed in studio with ceiling filled with parallel fluorescent light bulbs – Bulb reflections in car’s surface – Give designers crucial feedback on the quality of product – “Flowing” reflection patterns are good, “wiggly” ones are bad These light patterns can be simulated before a prototype is built – Saves money: building prototype is expensive

Farin & Hansford The Essentials of CAGD 26 / 29

slide-27
SLIDE 27

Reflection Lines

Highlight areas on surface where reflections will occur Simple model: For any point x – Compute its normal n – Let L denote a line light source – If α between n and L is small normal points to light source L ⇒ Region of the surface highlighted

Farin & Hansford The Essentials of CAGD 27 / 29

slide-28
SLIDE 28

Reflection Lines

Compute α: Find the point ˆ x on L closest to x L defined by point p and vector v ˆ x = p + v[x − p] v2 v α given by the angle between n and ˆ x − x Isophote: Curve on surface determined by the light line L

Farin & Hansford The Essentials of CAGD 28 / 29

slide-29
SLIDE 29

Reflection Lines

Left: B-spline surface has some shape imperfections – Not too obvious from the shaded image Middle: Reflection line display reveals them clearly Smoothing algorithm applied to B-spline surface ⇒ Right: Improved reflection pattern

Farin & Hansford The Essentials of CAGD 29 / 29