P. 1
Farouki Presentation

# Farouki Presentation

|Views: 54|Likes:

See more
See less

07/30/2011

pdf

text

original

# Farouki

1 1

Introduction to Pythagorean-hodograph curves
Rida T. Farouki Department of Mechanical & Aeronautical Engineering, University of California, Davis

geometry and computing
By virtue of their special algebraic structures, Pythagorean-hodograph (PH) curves offer unique advantages for computer-aided design and manufacturing, robotics, motion control, path planning, computer graphics, animation, and related fields. This book offers a comprehensive and self-contained treatment of the mathematical theory of PH curves, including algorithms for their construction and examples of their practical applications. Special features include an emphasis on the interplay of ideas from algebra and geometry and their historical origins, detailed algorithm descriptions, and many figures and worked examples. The book may appeal, in whole or in part, to mathematicians, computer scientists, and engineers.

geometry and computing

Rida T.Farouki

PythagoreanHodograph Curves
Algebra and Geometry Inseparable

Pythagorean-Hodograph Curves

ISBN 978-3-540-73397-3

ISBN 978-3-540-73397-3 (2008) 728 pp. + 204 illustrations

Pythagoras, tyrant of Selinunte
b2 a c c2 a2

rational arc-length parameterization is impossible
Theorem. It is impossible to parameterize any plane curve, other than a straight line, by rational functions of its arc length. rational parameterization r(t) = (x(t), y(t)) =⇒ curve points can be exactly computed by a ﬁnite sequence of arithmetic operations arc length parameterization r(t) = (x(t), y(t)) =⇒ equal parameter increments ∆t generate equidistantly spaced points along the curve simple result but subtle proof — Pythagorean triples of polynomials, integration of rational functions, and calculus of residues
R. T. Farouki and T. Sakkalis (1991), Real rational curves are not “unit speed,” Comput. Aided Geom. Design 8, 151–157 R. T. Farouki and T. Sakkalis (2007), Rational space curves are not “unit speed,” Comput. Aided Geom. Design 24, 238–240 T. Sakkalis, R. T. Farouki, and L. Vaserstein (2009), Non–existence of rational arc length parameterizations for curves in Rn , J. Comp. Appl. Math. 228, 494–497

b

It is hard to let go of Pythagoras. He has meant so much to so many for so long. I can with conﬁdence say to readers of this essay: most of what you believe, or think you know, about Pythagoras is ﬁction, much of it deliberately contrived. M. F. Burnyeat, London Review of Books (2007)

May 17, 1990 . . . . . . . . . . . . . . . May 17, 2010 — a truly remarkable 20-year coincidence —

arc length parameterization by rational functions?
rational parameterization arc–length parameterization

rational arc-length parameterization?
x(t) = Y (t) X(t) , y(t) = W (t) W (t) ⇒ with gcd(W, X, Y ) = 1 , W (t) ￿= constant (W X ￿ − W ￿X)2 + (W Y ￿ − W ￿Y )2 ≡ W 4 ￿ u2 − v 2 2uv , u2 + v 2 u2 + v 2 ￿

x￿2(t) + y ￿2(t) ≡ 1
(x,y) ∆s

Pythagorean triple ⇒ (x￿, y ￿) = are x(t) = ￿ u2 − v 2 dt , u2 + v 2 y(t) = ￿

+–×÷

∆s = ∆t

2uv dt u2 + v 2

both rational?

t

∆t

N mi ￿ ￿ Cij ¯ f (t) Cij = + j g(t) (t − zi) (t − zi)j ¯ i=1 j=1

Ci1 = residue
t=zi

f (t) , g(t) ￿

f (t) dt g(t)

¯ is rational ⇐⇒ Ci1 = Ci1 = 0 ￿

+∞

−∞ ￿

￿ f (t) f (t) ￿ ￿ dt = 2πi residue g(t) g(t) ￿t=zi
Im(zi )>0

parametric speed of curve r(ξ)
σ(ξ) = |r￿(ξ)| = ds = derivative of arc length s w.r.t. parameter ξ dξ ￿ x￿2(ξ) + y ￿2(ξ) for plane curve = ￿ x￿2(ξ) + y ￿2(ξ) + z ￿2(ξ) for space curve =

rational indeﬁnite integral ⇐⇒ zero deﬁnite integral proof by contradiction: x(t) = ￿ u2 − v 2 dt , u2 + v 2 y(t) = ￿ 2uv dt u2 + v 2

assume both rational with u(t), v(t) ￿≡ 0 and gcd(u, v) = 1 choose α, β so that deg(αu + βv)2 < deg(u2 + v 2) ￿ (αu + βv)2 1 dt = 2 (α2 − β 2) x(t) + αβ y(t) + 1 (α2 + β 2) t 2 u2 + v 2 ⇒ ￿
+∞

σ(ξ) ≡ 1 — i.e., s ≡ ξ — for arc-length or “natural” parameterization, but impossible for any polynomial or rational curve except a straight line irrational nature of σ(ξ) has unfortunate computational implications:

is rational

• arc length must be computed approximately by numerical quadrature • unit tangent t, normal n, curvature κ, etc, not rational functions of ξ • offset curve rd(ξ) = r(ξ) + d n(ξ) at distance d must be approximated • requires approximate real-time CNC interpolator algorithms, for motion along r(ξ) with given speed (feedrate) V = ds/dt

−∞

(αu + βv)2 dt = 0 u2 + v 2

[ α u(t) + β v(t) ]2 ≡ 0 u2(t) + v 2(t)

contradicts u(t), v(t) ￿≡ 0 or gcd(u, v) = 1

curves with “simple” parametric speed
b

  

 c  

 

Although σ(ξ) = 1 is impossible, we can gain signiﬁcant advantages ￿ by considering curves for which the argument of x￿2(ξ) + y ￿2(ξ) or ￿ x￿2(ξ) + y ￿2(ξ) + z ￿2(ξ) is a perfect square — i.e., polynomial curves whose hodograph components satisfy the Pythagorean conditions x (ξ) + y (ξ) = σ (ξ) ￿
2 ￿2 2

a

a, b, c = real numbers
choose any a, b → c =

or

x (ξ) + y (ξ) + z (ξ) = σ (ξ) ￿
2 ￿2 ￿2 2 ￿

a2 + b2

a, b, c = integers

for some polynomial σ(ξ). To achieve this, the Pythagorean structure must be built into the hodograph a priori, by a suitable algebraic model. planar PH curves — Pythagorean structure of r￿(t) achieved through complex variable model spatial PH curves — Pythagorean structure of r￿(t) achieved through quaternion or Hopf map models higher dimenions or Minkowski metric — Clifford algebra formulation
2

a +b =c

2

2

2

⇐⇒

 2 2  a = (u − v )w b = 2uvw  c = (u2 + v 2 )w

a(t), b(t), c(t) = polynomials  2 2  a(t) = [ u (t) − v (t) ] w(t) b(t) = 2 u(t)v(t)w(t)  c(t) = [ u2 (t) + v 2 (t) ] w(t)

a (t) + b (t) ≡ c (t) ⇐⇒

2

2

K. K. Kubota, Amer. Math. Monthly 79, 503 (1972)

hodograph of curve r(t) = derivative r￿(t)

Pythagorean-hodograph (PH) curves
r(t) is a PH curve in Rn ⇐⇒ coordinate components of r￿(t) are elements of a “Pythagorean (n + 1)-tuple of polynomials”

PH curves exhibit special algebraic structures in their hodographs
curve

• rational offset curves rd(t) = r(t) + d n(t)
velocity vectors

• polynomial arc-length function s(t) = ￿

t

0

|r￿(τ )| dτ ￿
1

hodograph

• closed-form evaluation of energy integral E =

κ2 ds

0

• real–time CNC interpolators, rotation-minimizing frames, etc. Pythagorean structure: x￿2(t) + y ￿2(t) = σ 2(t) for some polynomial σ(t) generalize PH curves to non-Euclidean metrics & other functional forms

planar offset curves
(y ￿(t), −x￿(t)) plane curve r(t) = (x(t), y(t)) with unit normal n(t) = ￿ x￿2(t) + y ￿2(t) offset at distance d deﬁned by rd(t) = r(t) + d n(t)

offsets to Pythagorean–hodograph (PH) curves
offset

algebraic curves rational curves polynomial curves PH curves

• deﬁnes center–line tool path, in order to cut a desired proﬁle • deﬁnes tolerance zone characterizing allowed variations in part shape • deﬁnes erosion & dilation operators in mathematical morphology, image processing, geometrical smoothing procedures, etc. • offset curves typically approximated in CAD systems • PH curves have exact rational offset curve representations

offset curve trimming procedure

Left: untrimmed offsets obtained by sweeping a normal vector of length d around the original curve (including approrpiate rotations at vertices). Right: trimmed offsets, obtained by deleting certain segments of the untrimmed offsets, that are not globally distance d from the given curve. Left: self-intersections of the untrimmed offset. Right: trimmed offset, after discarding segments between these points that fail the distance test.

k uk k=0 ￿ ￿ m (1 − ξ)m−k ξ k . k Hence. . where σk = n−1 j=max(0. . n . as compared to the approximate numerical quadrature required for “ordinary” polynomial curves. y ￿(ξ)) = (u2(ξ) − v 2(ξ).k) and the arc length of any segment ξ ∈ [ a. n ￿ ￿￿ ￿ m m ￿ j k−j ￿ ￿ (uj uk−j + vj vk−j ) . . the total arc length S of the curve is simply S = s(1) − s(0) = σ0 + σ1 + · · · + σn−1 . 2u(ξ)v(ξ)) where u(ξ) = m ￿ The cumulative arc length s(ξ) is then the polynomial function s(ξ) = ￿ ξ σ(τ ) dτ = 0 k=0 n ￿ sk ￿ ￿ n (1 − ξ)n−k ξ k . . the parametric speed can be expressed in Bernstein form as σ(ξ) = |r (ξ)| = u (ξ) + v (ξ) = ￿ 2 2 2m ￿ σk k=0 ￿ ￿ 2m (1 − ξ)2m−k ξ k . The result is exact. k v(ξ) = k=0 m ￿ vk ￿ ￿ m (1 − ξ)m−k ξ k . b ] is s(b) − s(a). with Bernstein coefﬁcients given by s0 = 0 sk = 1￿ σj . k of the curve parameter ξ. 6 self–intersections offset distance < dcrit = dcrit > dcrit Bezier control polygons of rational offsets offsets exact at any distance offset curve geometry governed by Huygens’ principle (geometrical optics) polynomial arc length function s(ξ) for a planar PH curve of degree n = 2m + 1 speciﬁed by r￿(ξ) = (x￿(ξ). .k−m) k min(m.intricate topology of parallel (offset) curves y = x4 "innocuous" curve offset distance = 1 4 cusps. n j=0 k−1 and k = 1.

1. reparameterized segments of a unique curve.. (0) ∆s = constant S=8 k = 1. . . solve equation s(ξ∗) = s∗ note that s is monotone-increasing with ξ (since σ = ds/dt ≥ 0 ) and hence this polynomial equation has just one (simple) real root — easily computed to machine precision by Newton-Raphson iteration Example: uniform rendering of a PH curve — for given arc-length increment ∆s. . . v(t)) = 1 ⇐⇒ gcd(x￿(t). pN — efﬁcient complex arithmetic algorithms • theory & algorithms for planar PH curves have attained a mature stage of development ⇐⇒ usually choose h(t) = 1 to deﬁne a primitive hodograph gcd(u(t). . . Tschinhausen’s cubic (caustic for reﬂection by parabola) • planar PH cubics characterized by intuitive geometrical constraints on ´ Bezier control polygon. . deﬁnes planar PH curve of odd degree n = 2m + 1 planar PH condition automatically satisﬁed using complex polynomials w(t) = u(t) + i v(t) maps to r￿(t) = w2(t) = u2(t) − v 2(t) + i 2 u(t)v(t) → formulation of efﬁcient complex arithmetic algorithms for the construction and analysis of planar PH curves . ξN such that s(ξk ) = k ∆s . . rotated.inversion of arc length function — ﬁnd parameter value ξ∗ at which arc length has a given value s∗ — i. . y ￿(t)) = 1 if deg(u(t). use Newton iteration ξk (r+1) = ξk (r) − s(ξk ) (r) σ(ξk ) (r) S = 22/3 . and match ﬁrst–order Hermite data by solving system of three quadratic equations • select “good” interpolant from multiple solutions using shape measure — arc length. ξN deﬁne motion at uniform speed along a curve — simplest case of a broader class of problems addressed by real–time interpolator algorithms for digital motion controllers. With initial approximation ξk = ξk−1 + ∆s/σ(ξk−1). uniform arc–length rendering planar PH curves — complex variable model x￿2(t) + y ￿2(t) = σ 2(t)   x￿(t) = h(t) [ u2(t) − v 2(t) ]  y ￿(t) = 2 h(t)u(t)v(t)   σ(t) = h(t) [ u2(t) + v 2(t) ] summary of planar PH curve properties • planar PH cubics are scaled. .e. . . N . r = 0. . absolute rotation index. . but not sufﬁciently ﬂexible for free-form design • planar PH quintics are excellent design tools — can inﬂect. exact arc lengths ∆t = constant Values ξ1. . . . . v(t)) = m. . elastic bending energy • generalizes to C 2 PH quintic splines smoothly interpolating sequence of points p0.ﬁnd parameter values ξ1.

Advances in Computational Mathematics 17. y) = 16 (x2 + y 2) x4 − 8 (5x2 + 4y 2) x2y + [ 2 (4d2 − 1) x2 − 8 (4d2 + 1) y 2 ] y + 4 d2(12d2 − 5) x2 + (4d2 − 1)2y 2 1 2 (n parabola r(t) = (t. Wd(s) = 256 (s2 + 16) s2 . Clifford algebra. Moon. Comput. Lee. 601–616 ¨ offset is algebraic curve of degree 6 with implicit equation fd(x. 0) s ∈ (0. 5-48 (2002)   x￿(t) = u2(t) − v 2(t) − w2(t)   ￿  y (t) = 2 u(t)v(t) ￿2 ￿2 ￿2 2 x (t) + y (t) + z (t) = σ (t) ⇐=  z ￿(t) = 2 u(t)w(t)    σ(t) = u2(t) + v 2(t) + w2(t) h(t) = 1 and w(t) = 1 → parabola h(t) linear and w(t) = 1 → cuspidal cubic k = 0 and h(t) = 1 → regular PH curve describes all polynomial curves with rational offsets   x￿(t) = u2(t) + v 2(t) − p2(t) − q 2(t)   ￿  y (t) = 2 [ u(t)q(t) + v(t)p(t) ] ￿2 ￿2 ￿2 2 x (t) + y (t) + z (t) = σ (t) ⇐⇒  ￿  z (t) = 2 [ v(t)q(t) − u(t)p(t) ]   σ(t) = u2(t) + v 2(t) + p2(t) + q 2(t) . P. generalized complex form (Lu 1995) ¨ h(t) = real polynomial. 211–229 (1993) H. Sakkalis. T. An algebraic approach to curves and surfaces on the sphere ¨ and on other quadrics. Hoschek. w(t) = u(t) + i v(t) = complex polynomial ￿ characterization of spatial Pythagorean hodographs R. one afﬁne node + six afﬁne cusps “non–ordinary” double point at inﬁnity with double points in ﬁrst & second neighborhoods Yd(s) = s6 − 16s4 − 2048d s3 − 256s2 + 4096 . and rational parameterization of curves and surfaces. Aided Geom. +∞) − (48d2 − 1) x4 − 32 (d2 − 1) x2y 2 + 16 y 4 deﬁnes a “doubly-traced” rational re-parameterization ￿ Xd(s) Yd(s) . Computer Aided Geometric Design 10. and B. Lu (1995). Juttler. 41–66 (1994) polynomial PH curve r(t) = two-sided rational offset curve r(t) = h(t) w2(t) dt ( k t + 1 ) h(t) w2(t) dt ￿ only a sufﬁcient condition — not invariant with respect to rotations in R3 R. t2) is simplest example t = s2 − 16 : 16 s s ∈ (−∞. J. Offset-rational parametric plane curves. Design 12. +∞) ￿ → t ∈ (−∞. Pythagorean–hodograph space curves. Farouki and T. Advances in Computational Mathematics 2. spin representation. Dietz. S. Wd(s) Wd(s) ￿ + 8 d2(4d2 + 1) y − d2(4d2 + 1)2 = 0 genus = 0 ⇒ − 1)(n − 2) = 10 double points two-sided offset rd(s) = r(s) ± d n(s) = is rational : Xd(s) = 16 (s4 + 16d s3 − 256d s − 256) s . and H. I.curves with two-sided rational offsets W. Choi. D.

+ 2 [ u(t)q(t) + v(t)p(t) ] j + 2 [ v(t)q(t) − u(t)p(t) ] k Hopf map model (C → R ) α(t) = u(t) + i v(t). α = pitch angle) and κ/τ = constant • spatial PH cubics characterized by intuitive geometrical constraints ´ on Bezier control polygons • spatial PH quintics well-suited to free-from design applications — two-parameter family of interpolants to ﬁrst-order Hermite data • optimal choice of free parameters is a rather subtle problem — one parameter controls curve shape. but not all PH curves of degree ≥ 5 “double” Pythagorean–hodograph (DPH) curves r￿(t) and r￿(t) × r￿￿(t) both have Pythagorean structures — have rational Frenet frames (t. etc. rational rotation-minimizing frame curves. u. v) with angular velocity satisfying ω · t ≡ 0 RRMF curves are of minimum degree 5 (proper subset of PH quintics) identiﬁable by quadratic (vector) constraint on quaternion coefﬁcients useful in spatial motion planning and rigid–body orientation control RMF Frenet . b) and curvatures κ all helical polynomial curves are DPH — not just PH — curves all DPH quintics are helical. “double” PH curves. β(t) = q(t) + i p(t) 2 3 → (x￿(t). the other total arc length • generalization to spatial C 2 PH quintic splines is problematic — too many free parameters! • many interesting subspecies — helical polynomial curves. y ￿(t).spatial PH curves — quaternion & Hopf map models quaternion model (H → R3) A(t) = u(t) + v(t) i + p(t) j + q(t) k → r￿(t) = A(t) i A∗(t) = [ u2(t) + v 2(t) − p2(t) − q 2(t) ] i summary of spatial PH curve properties • all spatial PH cubics are helical curves — satisfy a · t = cos α (where a = axis of helix. z ￿(t)) = (|α(t)|2 − |β(t)|2. but not all DPH curves of degree ≥ 7 rational rotation–minimizing frame (RRMF) curves rational frames (t. 2 Im(α(t)β(t))) equivalence — identify “i” with “i” and set A(t) = α(t) + k β(t) both forms invariant under general spatial rotation by θ about axis n special classes of spatial PH curves helical polynomial space curves satisfy a · t = cos α (a = axis. α = pitch angle) and κ/τ = tan α all helical polynomial curves are PH curves (implied by a · t = cos α) all spatial PH cubics are helical. 2 Re(α(t)β(t)). n.

153–160 H. Pottmann (1995). y. g(t) by K : L : M = − (a2 + b2)f : 2abg : (a2 − b2)g for rational PH curves. X = 2ab(a￿b − ab￿)f g − 1 (a4 − b4)(f ￿g − f g ￿) . y) and set x = X(t)/W (t). touching domain boundary in at least two points. y. but not arc length. M (t) is simpler deﬁne set of all tangent lines to rational PH curve by K(t) W + L(t) X + M (t) Y = 0 line coordinates are given in terms a(t). t) = for (x. Fiorot and T. y) on rational curve ￿(x. + b2(t) ny (t) = ￿ X(t) Y (t) .rational Pythagorean-hodograph curves J. Aided Geom. Design 12. y = Y (t)/W (t) to obtain W = (a2 + b2)(a￿b − ab￿)g 2 . C. have rational integrals) • geometrical optics interpretation — rational PH curves are caustics for reﬂection of parallel light rays by rational plane curves • Laguerre geometry model — oriented contact of lines & circles equation of tangent line at point (x. Characterizations of the set of rational parametric curves with rational offsets. Rational curves and surfaces with rational offsets. b(t) and f (t). dual representation in line coordinates K(t). 175–192 rational unit normal to planar curve r(t) = nx(t) = 2a(t)b(t) . in Curves and Surfaces in Geometric Design AK Peters. L(t). Comput. 2 Y = (a2 − b2)(a￿b − ab￿)f g + ab(a2 + b2)(f ￿g − f g ￿) . y. W (t) W (t) ￿ a2(t) a2(t) − b2(t) a2(t) + b2(t) • employs dual representation — plane curve regarded as envelope of tangent lines. class (= degree of line representation) is less than order (= degree of point representation) ´ dual Bezier representation — control points replaced by control lines rational offsets constructed by parallel displacement of control lines medial axis transform of planar domain medial axis = locus of centers of maximal inscribed disks. t) = nx(t) x + ny (t) y − f (t) = 0 g(t) ∂￿ (x. rather than point locus • offsets to a rational PH curve are of the same degree as that curve • admist natural generalization to rational surfaces with rational offsets • parametric speed. in general. is a rational function of curve parameter (rational functions do not. Gensane (1994). medial axis transform (MAT) = medial axis + superposed function specifying radii of maximal disks . t) = 0 ∂t envelope of tangent lines — solve ￿(x.

y(t)) and radii r(t) recovery of domain boundary ∂D as envelope of one–parameter family of circular disks speciﬁed by the MAT (x(t). light-like if d = 0. r￿(t) = 2 [ u(t)v(t) − p(t)q(t) ] . p(t). y1. y ￿(t) = 2 [ u(t)p(t) − v(t)q(t) ] .1) metric of Minkowski space R(2. y(t). x￿2(t) + y ￿2(t) ￿ r (t)y (t) ∓ x￿2(t) + y ￿2(t) − r￿2(t) x￿(t) . ye(t) = y(t) − r(t) x￿2(t) + y ￿2(t) σ(t) = u2(t) − v 2(t) + p2(t) − q 2(t) . Design 16. y2. P. (x(t). r2) as points in R(2.1) has signature + + − rather than usual signature + + + for metric of Euclidean space R3 Moon (1999): sufﬁcient–and–necessary characterization of Minkowski Pythagorean hodographs in terms of four polynomials u(t). 739–753 for parameterization to be rational. interpretation of Minkowski metric originates in special relativity: distance d between events with space–time coordinates (x1. Moon (1999). Minkowski Pythagorean hodographs. Aided Geom. MAT hodograph must satisfy x￿2(t) + y ￿2(t) − r￿2(t) = σ 2(t) — this is a Pythagorean condition in the Minkowski space R(2. time-like if d imaginary distance between circles (x1. q(t) x￿(t) = u2(t) + v 2(t) − p2(t) − q 2(t) . t2) is deﬁned by d2 = (x2 − x1)2 + (y2 − y1)2 − c2(t2 − t1)2 space-like if d real.Minkowski Pythagorean-hodograph (MPH) curves H. r(t)) r￿(t)x￿(t) ± ￿ ￿ xe(t) = x(t) − r(t) ￿ x￿2(t) + y ￿2(t) − r￿2(t) y ￿(t) . y2. r1) and (x2. y1. y(t).1) d2 = (x2 − x1)2 + (y2 − y1)2 − (r2 − r1)2 r rational boundary reconstructed from MPH curve y x d=0 d d imaginary . r(t)) = medial axis transform (MAT) of planar domain D characterizes domain D as union of one-parameter family of circular disks C(t) with centers (x(t). t1) and (x2. v(t). Comput.

control polygons for design of PH splines. Davis Hermite and spline interpolation algorithms for planar & spatial Pythagorean-hodograph curves — synopsis — • motivation for Hermite & spline interpolation algorithms • planar PH quintic Hermite interpolants (four solutions) • computing absolute rotation index & elastic bending energy • a priori identiﬁcation of “good” Hermite interpolant • planar C 2 PH quintic splines — numerical methods • spatial PH quintic Hermite interpolants (2 free parameters) • spatial PH quintics — taxonomy of special types • spatial C 2 PH quintic splines — residual freedoms motivation for Hermite & spline interpolation algorithms • only cubic PH curves characterizable by simple constraints ´ on Bezier control polygons • planar PH cubics = Tschirnhausen’s cubic. Farouki • investigation of PH curves involves a wealth of concepts from algebra and geometry with a long and fascinating history • many open problems remain: optimal choice of degrees of freedom. spatial PH cubics = { helical cubic space curves } — too limited for general free–form design applications • construct quintic PH curves “geometrically” by interpolation of discrete data — points. etc. computer graphics. tangents. animation. Department of Mechanical & Aeronautical Engineering. exact rotation–minimizing frames. bending energies. C 2 spline formulations. and quaternion or Hopf map model for spatial PH curves • efﬁcient algorithms allow interactive design of PH curves . robotics. exact arc–length computation. deeper geometrical insight into quaternion representation. Rida T. etc.closure • advantages of PH curves: rational offset curves. real-time CNC interpolators. path planning. • non–linear interpolation equations made tractable by complex number model for planar PH curves. etc. etc. • applications of PH curves in digital motion control. University of California.

15 w1w2 . Farouki. 2 w2 = d1 . w1. T. 5 2 w2 . w2 2 w0 = d0 . Sakkalis. The conformal map z → z 2 of the hodograph plane. A. American Mathematical Monthly 79. Pythagorean triples in unique factorization domains. w2 p1 = p0 + p2 = p1 + p3 = p2 + p4 = p3 + p5 = p4 + 2 w0 . IBM Journal of Research and Development 34 736–752 (1990) R. T. Pythagorean hodographs. y ￿(t)) = w2(t) complex Hermite data — r￿(0) = d0. Computer Aided Geometric Design 11. r￿(1) = d1. K. 5 ++ +– –+ –– blue = PH quintic. Kubota. ∆p one good solution among four PH quintic interpolants — other three typically exhibit undesired “looping” behavior ´ obtain Bezier control points of PH quintic from w0. 363–390 (1994) pk k=0 ￿ ￿ 5 (1 − t)5−k tk k complex number model for planar PH curves choose complex polynomial → planar Pythagorean hodograph w(t) = u(t) + i v(t) r￿(t) = (x￿(t). red = “ordinary” cubic . Farouki and T. r(1) − r(0) = ∆p → three quadratic equations in three complex variables w0. d1. w1. Farouki and C. Mathematics of Computation 64.Pythagorean triples of polynomials   x￿(t) = u2(t) − v 2(t)  y ￿(t) = 2 u(t)v(t)   σ(t) = u2(t) + v 2(t) planar PH quintic Hermite interpolants R. T. 5 2 2w1 + w0w2 . 5 w0w1 . 503–505 (1972) R. 2 w0 + w0w1 + 2 2w1 + w2w0 2 + w1w2 + w2 = 5∆p 3 four distinct PH quintic Hermite interpolants generically four distinct interpolants to given Hermite data d0. 1589–1609 (1995) x￿2(t) + y ￿2(t) = σ 2(t) ⇐⇒ complex representation: hodograph = [ complex quadratic polynomial ] 2 r￿(t) = [ w0(1 − t)2 + w12(1 − t)t + w2t2 ] 2 r(t) = ￿ r￿(t) dt = 5 ￿ K. Hermite interpolation by Pythagorean–hodograph quintics. Neff.

w1.l. b lie on opposite sides of (and are not close to) this interval. a3.o. a2. Juttler. 1 ]. ¨ Mathematics of Computation 70. b2. a. choosing the “good” interpolant — bending energy U = ￿ κ2 ds = ￿ |r￿ × r￿￿|2 dt σ5 compare PH quintic & “ordinary” cubic interpolants use complex form r￿(t) = w2(t) with w(t) = k(t − a)(t − b) again analytic reduction of indeﬁnite integral ￿ 4 U (t) = 2 Re(a1) ln |t − a| + 2 Re(b1) ln |t − b| |k|2 − 2 Im(a1) arg(t − a) − 2 Im(b1) arg(t − b) ￿￿ ￿ 2 b2 a3 b3 2 a2 + + − Re + . w2 locations of a. C 2 Hermite interpolation by Pythagorean hodograph curves of degree seven. 1 ] gives Rabs : Rabs = Rabs ∠ 0a1 + ∠ 0b1 (no inﬂections) π N 1 ￿ | ∠ tk a tk+1 − ∠ tk b tk+1 | = π k=0 Computation of absolute rotation index Rabs from locations of the complex hodograph roots a. b instead of w0. t − a t − b (t − a)2 (t − b)2 good PH quintic interpolants (blue) to ﬁrst-order Hermite data typically have lower bending energy than “ordinary” cubic interpolants (red) C 2 spatial Hermite interpolants: B.choosing the “good” interpolant — rotation index absolute rotation index: Rabs = 1 2π ￿ |κ| ds w. b relative to t ∈ [ 0. b1.g. The best interpolant arises when a. b3 = coefﬁcients in partial fraction expansion of integrand total bending energy of PH quintic E = U (1) − U (0) . 1089–1111 (2001) a1. b relative to [ 0. take r(0) = 0 and r(1) = 1 (shift + scale of Hermite data) r￿(t) = k [ (t − a)(t − b) ]2 solve for k.

P. Computer Aided Geometric Design 18. pi+1 • “ordinary” cubic splines incur linear equations in real variables. write hodograph of segment ri(t) between pi−1 and pi. the “good” PH quintic corresponds to the ++ choice of signs in the solution procedure G2 blends between a line and a circle. I. T. components of PH quintic splines strongly coupled through PH property • linearity of “ordinary” cubic splines ⇒ unique interpolant and spline basis methods. 943–950 (1996) R. Pythagorean–hodograph quintic transition curves of monotone curvature. Farouki. 93–115 (2001) H. Moon. Moon.00 D = { d | Re(d) > 0 and |d| < 3 } — i. P. and H. Meek. but non–linear nature of PH quintic splines ⇒ multiplicity of solutions and no linear superposition planar C 2 PH quintic spline equations problem: construct C 2 piecewise–PH–quintic curve interpolating given sequence of points p0. . J. S. Kwon. Choi. Topological criterion for selection of quintic Pythagorean–hodograph Hermite interpolants. but PH quintic splines incur quadratic equations in complex variables • coordinate components of “ordinary” cubic splines weakly coupled through nodal parameter values. . the end–point interpolation condition ￿ 1 0 r￿ (t) dt = ∆pi i . . d1 lie in complex–plane domain D deﬁned by k = 3. I. A Pythagorean–hodograph quintic spiral. Computer Aided Geometric Design 25. Computer Aided Design 29. r￿ (1) = r￿ (0) = 1 (zi + zi+1)2. criterion for “good” solution — absence of anti–parallel tangents relative to the “ordinary” cubic Hermite interpolant construction of C 2 PH quintic splines versus “ordinary” C 2 cubic splines • both incur global system of equations in three consecutive unknowns • both require speciﬁcation of end conditions to complete the equations • equations for “ordinary” cubic splines arise from C 2 continuity condition at each interior node. . Construction and shape analysis of PH quintic Hermite interpolants. as square of a complex quadratic: 1 r￿ (t) = [ 2 (zi−1 + zi)(1 − t)2 + zi 2(1 − t)t + 1 (zi + zi+1)t2 ]2 i 2 ⇒ ri(t) and ri+1(t) automatically satisfy C 1 and C 2 conditions at their juncture pi = ri(1) = ri+1(0) — namely. while equations for PH quintic splines arise from interpolating consecutive points pi. 601–606 (1997) a priori identiﬁcation of “good” interpolant H. H. R. Walton and D. Computer Aided Design 28.. 411–433 (2008) if the end derivatives d0. Choi.50 k = 3. Farouki.e. and H. they point in the direction of ∆p and have magnitudes commensurate with |∆p|. R. i i+1 4 r￿￿(1) = r￿￿ (0) = (zi+1 − zi)(zi + zi+1) i i+1 writing ∆pi = pi − pi−1. T. T.monotone–curvature PH quintic segments D. pN ∈ R2 using complex representation of planar PH quintics. S. Farouki.75 k = 4. deﬁned by PH quintics of monotone ´ curvature (the Bezier control polygons of the PH quintics are also shown) — the free parameter k controls the rate of increase of the curvature.

. . 417–442 (1996) the non–linear system to be solved: fi(z1. i = 1. . zN +1.yields for i = 1. Albrecht and R. . N typical behavior of ￿f ￿2. λ) = λ fi(z1. . . zN ) = 0 2N +k non-singular solution loci (z1. . . j ≤ N 700 600 500 400 300 200 100 0 0. .8 1. . . .2 0. T. . N . . 2. N the equations fi(z1. (r) (r) i = 1. (r) r = 1. +1 depends on chosen end conditions) • unique good interpolant — without undesired “looping” behavior • better shape (curvature distribution) than “ordinary” C 2 cubic spline • becomes computationally very expensive for large N corrector step : correct for curvature of loci by Newton iterations zj (r+1) = zj (r) + δzj (r) for j = 1. λ + ∆λ) |2 ≤ ￿2 . 1 ≤ i ≤ N “continuously deform” initial system into desired system while tracking all solutions as homotopy parameter λ increases from 0 to 1 hi(z1. . . . . zN . . . 0. N until | hi(z1 . . ￿h￿2 norms in predictor–corrector scheme • well–conditioned — accuracy near machine precision achievable • gives complete set of 2N +k distinct PH quintic spline interpolants (k = −1. . . Construction of C 2 Pythagorean–hodograph interpolating splines by the homotopy method . 1 ≤ i ≤ N “initial” system with known solutions: gi(z1. . zN ) = 0 . . Farouki.6 0. . . . . . . . . rN (t) are just PH cubics • periodic end conditions — set r￿ (1) = r￿ (0) and r￿￿ (1) = r￿￿(0) 1 1 N N for a closed C 2 curve with pN = p0 • no analog of not–a–knot condition for “ordinary” C 2 cubic splines solution method #1 — homotopy scheme G.0 predictor step : motion along tangent directions to solution loci N ￿ j=1 λ Mij ∆zj = (eiφ gi − fi) ∆λ . zN . . . . First & last equations modiﬁed using chosen end conditions to avoid reference to undeﬁned variables z0. . . . . zN . . . zN . where N ￿ j=1 N ￿ i=1 Mij δzj = − hi . zN . . . . zN ) = 0 . . . 1 ≤ i ≤ N tridiagonal Jacobian matrix: Mij ∂hi . . .0 0. Advances in Computational Mathematics 5. = ∂zj 1 ≤ i. .4 0. λ) ∈ CN × R for “almost all” φ predictor-corrector method trace from λ = 0 to 1 loci deﬁned by hi(z1. possible choices for end conditions • speciﬁed end derivatives — r￿ (0) = d0 and r￿ (1) = dN 1 N • cubic (Tschirnhaus) end spans — r1(t). zN ) = 3 z2 + 27 z2 + 3 z2 + zi−1zi+1 i−1 i i+1 + 13 zi−1zi + 13 zizi+1 − 60 ∆pi = 0 in the N complex variables z1. . . zN ) + (1 − λ) eiφ gi(z1. . . . λ) = 0. ￿g￿2. . . .

. . . (r) (r) r = 0. we want to compute only the “good” PH quintic spline apply Newton-Raphson iteration to system fi(z1. . . . . Mii = 13 zi−1 + 54 zi + 13 zi+1 . ∂ zj 1 ≤ i. . . Mi. . the only non–zero elements are Mi. . . . . . Farouki. . zN ) = 0 . . the Newton–Raphson iterations may be expressed as z(r+1) = z(r) + δz(r) . rows i = 1 and i = N are modiﬁed to reﬂect the chosen end conditions key step: ﬁnd “sufﬁciently close” initial approximation z(0) = (z1 . . T. 1. Efﬁcient solution of the complex quadratic tridiagonal system for C 2 PH quintic splines. Rabs = |κ| ds . . E = κ2 ds 2π –4 0 1 2 3 4 t 5 6 7 8 9 blue = C 2 PH quintic spline. red = “ordinary” C 2 cubic spline solution method #2 — Newton-Raphson iteration R. 1 ≤ i ≤ N recall that Jacobian matrix Mij = ∂ fi . absolute rotation index. zN ). Kuspa. Sestini. . 2. Manni. Numerical Algorithms 27. . zN ) Kantorovich theorem: guaranteed convergence under veriﬁable conditions . . . B. zN )T and f = (f1. N − 1. j ≤ N is tridiagonal where δz(r) = (δz1 . superscripts on M and f indicate evaluation at z(r) = (z0 . . . C. fN )T . K. (0) (0) (r) (r) in rows i = 2.complete set of PH quintic spline interpolants comparison of PH quintic & “ordinary” cubic splines 20 16 12 κ 8 4 0 shape measures for identifying “good” interpolant: total arc length. . .i−1 = 6 zi−1 + 13 zi + zi+1 . . in applications. . . 35–60 (2001) writing z = (z1.i+1 = zi−1 + 13 zi + 6 zi+1 . . elastic bending energy ￿ ￿ ￿ 1 S = ds . δzN )T is the solution of the linear system M(r) δz(r) = − f (r) . and A.

23 sec 0. . pN yields a tridiagonal linear system for starting values z1. . . zN zi−1 + 6zi + zi+1 = 4 ￿ 6∆pi − (di−1 + di) .choice of starting approximation critical to successful Kanotorovich test & rapid convergence of iterations strategy: equate mid–point derivatives of PH quintic spline to (known) mid–point derivatives of “ordinary” cubic spline that interpolates the same data points p0. .21 sec 1128. and C. dN are the nodal derivatives of the “ordinary” cubic spline. L. . and end conditions big_open big_closed C 2 PH quintic splines computed by Newton–Raphson method for large N . 28–52 (2007) desire a control–polygon approach to constructing PH splines.09 sec 656. pN shape kidney squiggly quirky big open big closed N +1 10 15 19 35 38 homotopy method 8. . . .11 sec 0. . A control polygon scheme for design of planar C 2 PH quintic spline curves. i = 1. . that mimics the familiar and useful properties of cubic B–spline curves non–linear nature of PH curves =⇒ there is no spline basis for them strategy: control polygon deﬁnes a “hidden” interpolation problem for PH splines.40 sec 0. . . . T. knot sequence. Sampoli. Manni. Pelosi.97 sec Newton–Raphson 0. .12 sec 0. to be solved by efﬁcient Newton–Raphson method C 2 PH quintic spline curve associated with a given control polygon and knot sequence is deﬁned to be the “good” interpolant to the nodal points of the ordinary C 2 cubic spline curve with the same B–spline control points. R.43 sec Timing comparisons for C 2 PH quintic spline test curves design of C 2 PH splines by control polygons F. N efﬁciency of Newton-Raphson method tridiagonal equations for NR increments δz(r) — O(N ) solution cost — and quadratic convergence of the NR iterations =⇒ extremely efﬁcient construction of large–N PH quintic splines where d0. . . . M. . Farouki. and equations i = 1 and i = N are adjusted for the chosen end conditions strategy is nearly infallible for smoothly–varying data points p0. . . Computer Aided Geometric Design 24.

Choi. . Australia . j. Pythagorean–hodograph space curves. y ￿(t). Ivan. 2 41–66 (1994) H. k satisfy i2 = j2 = k2 = i j k = −1 equivalently. 211–229 (1993) R. I. i. Hoschek. and H. Dietz. the economy in Russia hit hard times. and Alexey — the Brothers Karamazov — therefore decided to seek their fortunes by emigrating to America. Lee. Computer Aided Geometric Design 10. D. Advances in Computational Mathematics. the three Russian brothers . and B. . J. Dmitry. Pythagorean quartuples of polynomials   x￿(t) = u2(t) + v 2(t) − p2(t) − q 2(t)   ￿  y (t) = 2 [ u(t)q(t) + v(t)p(t) ]  ￿  z (t) = 2 [ v(t)q(t) − u(t)p(t) ]   σ(t) = u2(t) + v 2(t) + p2(t) + q 2(t) fundamentals of quaternion algebra quaternions are four-dimensional numbers of the form A = a + ax i + ay j + az k and B = b + b x i + by j + bz k x￿2(t) + y ￿2(t) + z ￿2(t) = σ 2(t) ⇐⇒ that obey the sum and (non-commutative) product rules A + B = (a + b) + (ax + bx) i + (ay + by ) j + (az + bz ) k A B = (ab − axbx − ay by − az bz ) + (abx + bax + ay bz − az by ) i R. i j = − j i = k . P. . and jobs were difﬁcult to ﬁnd. Moon. .. ki = −ik = j quaternion model for spatial PH curves choose quaternion polynomial → spatial Pythagorean hodograph A(t) = u(t) + v(t) i + p(t) j + q(t) k r￿(t) = (x￿(t). z ￿(t)) = A(t) i A∗(t) . Farouki and T. . 5-48 (2002) + (aby + bay + az bx − axbz ) j + (abz + baz + axby − ay bx) k basis elements 1. S. comparison of the “ordinary” cubic B–spline (red) and PH quintic spline (blue) curves deﬁned by given control polygons and knot sequences computation sufﬁciently fast for interactive modiﬁcation of polygons multiple knots may be introduced to reduce the continuity to C 1 or C 0 linear precision & local modiﬁcation capability possible with double knots . Clifford algebra. . . jk = −kj = i. Advances in Computational Mathematics 17. Following the collapse of the former Soviet Union. and rational parameterization of curves and surfaces. Juttler. . England. T. Sakkalis. spin representation. An algebraic approach to curves and surfaces on the sphere ¨ and on other quadrics.

a) and B = (b. sin 2 θ n) describes a spatial rotation by angle θ about unit vector n for any vector v the quaternion product ˜ v = U v U∗ ˜ yields the vector v corresponding to a rotation of v by θ about n here v is short-hand for a “pure vector” quaternion V = (0. b and a. sin 2 θ n) — then r￿(t) → ˜￿(t) = A(t) i A∗(t) 2 A = ￿ ￿ (1 + λ)|v| µ cos φ + ν sin φ ν cos φ − µ sin φ − sin φ + cos φ i + j+ k 2 1+λ 1+λ where φ = free angular variable more compact from — A = ￿ |v| n exp(φ i) where ˜ A(t) = U A(t) (can interpret as rotation in R4) where exp(φ i) = cos φ + sin φ i and n = ˆ i+v ˆ = bisector of i. −a) is the conjugate of A modulus : note that |A |2 = A∗A = AA∗ = a2 + |a|2 and (A B)∗ = B ∗A∗ unit quaternions & spatial rotations 1 1 any unit quaternion has the form U = (cos 2 θ. nz ) 1 ˜ ˜ r deﬁne U = (cos 1 θ. the 3-dimensional vector analysis of Gibbs and Heaviside) A∗ = (a. b) — a. ﬁnd quaternions A satisfying A i A∗ = v such quaternions A map the unit vector i onto the given vector v by means of a scaling–rotation transformation ˆ write v = ￿ v = (λ. a + b) A B = ( ab − a · b . a b + b a + a × b) (historical note: Hamilton’s quaternions preceded. but were eventually supplanted by.scalar-vector form of quaternions set A = (a. µ. ny . v ˆ |i + v| . ν) — obtain one–parameter family of solutions |v| + 2 [ u(t)q(t) + v(t)p(t) ] j + 2 [ v(t)q(t) − u(t)p(t) ] k rotation invariance of spatial PH form: rotate by θ about n = (nx. b also called the real and imaginary parts of A. b and a. b are scalar and vector parts (a. v) unit quaternions U form a (non-commutative) group under multiplication |A B | = |A | |B| quaternion model for spatial PH curves quaternion polynomial A(t) = u(t) + v(t) i + p(t) j + q(t) k maps to r (t) = A(t) i A (t) = [ u (t) + v (t) − p (t) − q (t) ] i ￿ ∗ 2 2 2 2 solution of “fundamental” quaternion equation for any given vector v. B) A + B = (a + b.

A(t) = A0(1 − t)2 + A12(1 − t)t + A2t2 examples of spatial PH quintic Hermite interpolants → three equations in three quaternion unknowns A0. 1) for both curves di = (−0.spatial PH quintic Hermite interpolants spatial PH quintic interpolating end points pi. −1. Giannelli. Farouki.) R.2) and df = (−1. df 3 variables φ0. di = (0. Identiﬁcation of spatial PH quintic Hermite interpolants with near–optimal shape measures.8. −1. φ1.5. df r￿(t) = A(t) i A∗(t) . and varying only 2 (φ0 + φ2) . pf and di. 274–297 (2008) total arc length depends only on difference φ2 − φ0 of two parameters ⇒ one–parameter family of Hermite interpolants with identical arc lengths the Hermite interpolants of extremal arc length are helical PH curves minimization of elastic energy E = ￿ κ2 ds (computation intensive) several efﬁcient empirical measures for determining “optimal” φ0. −1. Sestini.3. 0) and pf = (1. C. of identical arc 1 length. T.3. 0. pf & derivatives di.5. 1. −1. deﬁned by keeping φ2 − φ0 constant. 1. −1.l.o. A1. and A. C.6.2) and df = (0.4. φ2 (set φ1 = 0 w.2) for curve on right 0 A(t) i A∗(t) dt = + + 1 5 A0 i A∗ + 0 ∗ 1 10 (A0 i A1 ∗ 1 30 (A0 i A2 ∗ 1 10 (A1 i A2 + 4 A1 i A∗ + A2 i A∗ ) 1 0 + A2 i A∗ ) + 1 1 5 A2 i A∗ = pf − pi 2 • two–parameter family of solutions for given data pi.2.0) for curve on left. A2 ￿ r￿(0) = A0 i A∗ = di 0 1 and r￿(1) = A2 i A∗ = df 2 + A1 i A∗ ) 0 pi = (0. 0. φ2 One–parameter families of spatial PH quintic interpolants. Computer Aided Geometric Deisgn 25. −0. φ2 but interpolants depend only on differences choosing free parameters φ0.g. Manni.

α = pitch angle) equivalently.. etc. animation. uf . pf and frames (ti. v(ξ)) • RRMF condition for spatial PH quintics: A1 i A∗ 1 = A0 i A∗ 2 + A2 i A∗ 0 • satisfying RRMF condition & end frame interpolation always possible — end point interpolation requires positive root of degree 6 equation • diverse applications — to robotics. v) with angular velocity satisfying ω · t ≡ 0 RRMF curves are of minimum degree 5 (proper subset of PH quintics) identiﬁable by quadratic (vector) constraint on quaternion coefﬁcients useful in spatial motion planning and rigid–body orientation control construction through geometric Hermite interpolation algorithm RMF Frenet rational rotation-minimizing rigid body motions R. ui. . vi) and (tf . Design of rational rotation–minimizing rigid body motions by Hermite interpolation. but not all PH curves of degree ≥ 5 “double” Pythagorean–hodograph (DPH) curves components of both r￿(t) & r￿(t) × r￿￿(t) satisfy Pythagorean conditions DPH curves have rational Frenet frames (t. spatial path planning. C. Comp. . proximity to a single PH cubic — to provide control-polygon-based design scheme • specify arc lengths of spline segments as multiples of chord lengths. u(ξ).g. . pN ∈ R3 both incur one residual freedom per spline segment • shape of spline interpolant sensitive to choice of free parameters • early study — ﬁx freedoms using “quaternion matching” condition • optimize shape measure — e. vf ) by PH quintic r(ξ) with rational rotation-minimizing frame (t(ξ).. say) we can use γ as a single tension parameter to alter interpolant shape • interpolate end points pi. n. Giannelli. a · t = cos α (a = axis of helix.. . b) and curvatures κ all helical polynomial curves must be DPH — not just PH — curves all DPH quintics are helical. Manni. but not all DPH curves of degree ≥ 7 rational rotation–minimizing frame (RRMF) curves rational adapted frames (t.e. A. submitted spatial C 2 PH quintic splines • quaternion and Hopf map models for spatial C 2 PH quintic spline curves interpolating sequence of points p0. Math. Sestini (2010). Farouki. curve has constant curvature–torsion ratio: κ/τ = tan α all helical polynomial curves are PH curves (implied by a · t = cos α) all spatial PH cubics are helical. u. C. ∆sk = γk | pk − pk−1| — for γ1 = · · · = γN (= γ. geometric sweeping operations. . T.taxonomy of “special spatial” PH curves helical polynomial space curves curve tangent t makes a constant angle α with a ﬁxed unit vector a — i.

Frenet directed frame. Aided Geom. Aided Geom. geometric Hermite interpolation with RRMF curves. applications Rida T. exact bending energy. algorithms. etc. Comput. Guggenheimer (1989). There is more than one way to frame a curve.r. efﬁcient & robust Hermite and spline interpolation algorithms are available for practical use • for spatial PH curves. Manni.t. C. etc. basic Hermite interpolation algorithm available with methods for “optimal” selection of two free parameters • open problems for spatial PH curves — choice of multiple free parameters in C 2 spline formulation. University of California. such that e1 = r￿/|r￿| is the curve tangent and (e2.closure • advantages of PH curves: rational offset curves. L. arc length ( ⇒ one–parameter family of RMFs) H. Two moving coordinate frames for sweeping along a 3D trajectory. Sestini) — synopsis — • rotation-minimizing frames (RMFs) on space curves • applications of RMFs — “defects” of the Frenet frame • RMFs for spatial Pythagorean–hodograph (PH) curves • characterization of PH curves with exact rational RMFs • a “philosophical” interlude — theory versus practice • directed frames — camera orientation control computation of rotation-minimizing directed frames • polar differential geometry — anti-hodograph. • complex number and quaternion models are “natural” formulations for planar and spatial PH curves — rotation invariance. Design 6. e3) exhibit no instantaneous rotation about e1 F. Klok (1986). Design 3. 246–251 • for a rotation–minimizing frame (RMF). Giannelli. Han. Bishop (1975). Sakkalis. e2. the normal–plane vectors (e2. analytic real-time interpolators. Math. Davis (in collaboration with C. rotation-minimizing frames. applications of rotation–minimizing frames in motion planning. animation. 77–78 . Computing frames along a trajectory. e3) on a space curve r(ξ) is a system of three orthonormal vectors. geometrical insight. Monthly 82. Y. Amer. 217–229 • angular orientation of RMF relative to Frenet frame = integral of curve torsion w. spatial orientation control. etc. simpliﬁed construction algorithms. polar curvature and torsion • conclusions and practical advice on standard answers to questions asked at conferences rotation-minimizing frames on space curves • an adapted frame (e1. C. there are inﬁnitely many adapted frames — the Frenet frame is perhaps the most familiar R. • for planar PH curves. A. Comput. Farouki Department of Mechanical & Aeronautical Engineering. Rotation-minimizing frames on space curves — theory. T. e3) span the curve normal plane at each point • on any given space curve.

|r | r￿ × r￿￿ n = ￿ × t. Giannelli. |r × r￿￿| z variation of frame (t(ξ). Design 19. Farouki and C. curvature. Farouki and T. Y. Han (2003). n(ξ). n) span osculating plane (second–order contact at each point) x y • (n. Y. n(ξ). A. Giannelli. Manni. A. Choi and C. Graphical Models 64. Design of rational rotation–minimizing rigid body motions by Hermite interpolation. Sestini (2009).• “implicit” algebraic condition for rational RMFs on spatial PH curves — no rational RMFs for non–degenerate cubics • spatial PH curves admit exact evaluation of torsion integral. Design 25. b) span normal plane (cuts curve orthogonally at each point) • (b. Aided Geom. C. Rational rotation–minimizing frames on polynomial space curves of arbitrary degree. T. b(ξ)) on space curve r(ξ) deﬁned by r￿ t = ￿ . submitted elementary differential geometry of space curves Frenet frame (t(ξ). Rational approximation schemes for rotation–minimizing frames on Pythagorean–hodograph curves. Maurer (1999). T. Math... Euler–Rodrigues frames on spatial Pythagorean–hodograph curves. C. Farouki. J. Manni. Graphics 3. κ = | r￿ × r￿￿| . 382–395 C. Comput. T. torsion functions σ = |r￿| . Math. Nonexistence of rational rotation–minimizing frames on cubic curves. Farouki (2002). T. Farouki (2010). to appear ERF = rational adapted frame deﬁned on spatial PH curves that is non–singular at inﬂection points • spatial motion design by RRMF quintic Hermite interpolation R. Han (2002). 435–454 • simpliﬁed (quadratic) RRMF conditions for quaternion and Hopf map representations of spatial PH quintics R. Comp. Adv. J. Exact rotation–minimizing frames for spatial Pythagorean–hodograph curves. Aided Geom. 580–592 • piecewise–rational RMF approximation on polynomial & rational curves ¨ B. Comput. t) span rectifying plane (envelope of these planes deﬁnes rectifying developable. Aided Geom. C. Comput. to appear • Euler–Rodrigues frame (ERF) is better reference than Frenet frame for identifying curves with rational RMFs (RRMF curves) H. Han (2008). n points toward center of curvature. Aided Geom. C. Symb. Comp. 298–304 • sufﬁcient–and–necessary conditions on Hopf map coefﬁcients of spatial PH quintics for rational RMF R. Design 26. Quaternion and Hopf map characterizations for the existence of rational rotation–minimizing frames on quintic space curves. Sestini (2010). T. Quintic space curves with rational rotation–minimizing frames. Farouki. Sakkalis (2010). Y. Juttler and C. but expression for RMF contains transcendental terms R. Rational approximation of rotation minimizing frames using ¨ Pythagorean–hodograph cubics. Comp. 603–620 • general RRMF conditions for spatial PH curves of any degree R. 141–159 R. Design 20. allows curve to be ﬂattened onto a plane) t deﬁnes instantaneous direction of motion along curve. b(ξ)) along curve r(ξ) speciﬁed in terms of parametric speed. I. T. Geom. b = t × n completes frame .. |r￿|3 τ = (r￿ × r￿￿) · r￿￿￿ | r￿ × r￿￿|2 r￿ × r￿￿ b = ￿ |r × r￿￿| by Frenet–Serret equations    t￿ 0 κ  n￿  = σ  −κ 0 b￿ 0 −τ   0 t τ  n  0 b • (t. Comput.

where κ = 0 • exhibits “unnecessary rotation” in the curve normal plane dt = d × t. ds du = ω × u. path planning. v) about tangent t → rotation–minimizing frame much better than Frenet frame for applications in animation. b) do not depend rationally on curve parameter ξ • normal–plane vectors (n. the RMF identiﬁes least elastic energy associated with twisting (as distinct from bending) d = κ b + τ t = Frenet frame rotation rate component τ t describes instantaneous rotation in normal plane (unnecessary for “smoothly varying” adapted orthonormal frame) Frenet ERF RMF sudden reversal of Frenet frame through an inﬂection point Frenet frame (center) & rotation-minimizing frame (right) on space curve motion of an ellipsoid oriented by Frenet & rotation-minimizing frames surface constructed by sweeping an ellipse along a space curve using Frenet frame (center) & rotation-minimizing frame (right) . b) become indeterminate and can suddenly “ﬂip” at inﬂection points of curve. among all adapted frames on a space curve. ds Darboux vector dn = d × n. etc.“defects” of Frenet frame on space curves • (t. v) satisfying dt = ω × t. swept surface constructions. u. n. ds db = d×b ds total curvature |d| = √ κ2 + τ 2 = angular velocity of Frenet frame rotation–minimizing adapted frame (t. ds dv = ω×v ds RMF characteristic property — angular velocity ω satisﬁes ω · t ≡ 0 no instantaneous rotation of normal–plane vectors (u.

and rational parameterization of curves and surfaces. y ￿(t). etc. I. rotation-minimizing frames. v) on spatial PH quintics: • analytic reduction — involves rational function integration. z ￿(t)) = (|α(t)|2 − |β(t)|2. 2 Re(α(t)β(t)). y ￿(t). and H.Pythagorean-hodograph (PH) curves r(ξ) = PH curve in Rn ⇐⇒ coordinate components of r￿(ξ) elements of “Pythagorean (n + 1)-tuple of polynomials” Pythagorean quartuples of polynomials   x￿(t) = u2(t) + v 2(t) − p2(t) − q 2(t)   ￿  y (t) = 2 [ u(t)q(t) + v(t)p(t) ]  ￿  z (t) = 2 [ v(t)q(t) − u(t)p(t) ]   σ(t) = u2(t) + v 2(t) + p2(t) + q 2(t) x￿2(t) + y ￿2(t) + z ￿2(t) = σ 2(t) ⇐⇒ PH curves incorporate special algebraic structures in their hodographs (complex number & quaternion models for planar & spatial PH curves) • rational offset curves rd(ξ) = r(ξ) + d n(ξ) • polynomial arc-length function s(ξ) = ￿ ξ H. z ￿(t)) = A(t) i A∗(t) 0 |r￿(ξ)| dξ ￿ 1 • closed-form evaluation of energy integral E = κ2 ds α(t) = u(t) + i v(t). Moon. Advances in Computational Mathematics 17. spin representation. P. 2 Im(α(t)β(t))) equivalence — identify “i” with “i” and set A(t) = α(t) + k β(t) • real-time CNC interpolators. logarithmic dependence on curve parameter ´ • rational approximation — use Pade (rational Hermite) approach: simple algorithm & rapid convergence • exact rational RMFs — identify sufﬁcient and necessary conditions for rational RMFs on spatial PH curves spatial PH quintic Frenet frame rotation–minimizing frame . 5-48 (2002) quaternion representation → spatial Pythagorean hodograph Hopf map representation A(t) = u(t) + v(t) i + p(t) j + q(t) k r￿(t) = (x￿(t). Lee. Clifford algebra. Choi. u. β(t) = q(t) + i p(t) 0 → (x￿(t). rotation-minimizing frames on spatial PH curves new basis in normal plane ￿ u v ￿ = ￿ cos θ sin θ − sin θ cos θ ￿￿ n b ￿ comparison of Frenet & rotation-minimizing frames ￿ where θ = − τ ds : cancels “unnecessary rotation” in normal plane free integration constant =⇒ ∃ one–parameter family of RMFs options for construction of RMF (t. D. S.

q(ξ) onto the RMF vectors u(ξ).5 t 0. β(ξ) = q(ξ) + i p(ξ) requires existence of complex polynomial w(ξ) = a(ξ) + i b(ξ) such that αα￿ − α￿α + ββ ￿ − β β ww￿ − w￿w = 2 + |β|2 |α| |w|2 Han (2008): no RRMF cubics exist.4 0. a2(ξ) + b2(ξ) a (ξ) + b2(ξ) 2 2 if such polynomials a(ξ).e. b) for seeking rational RMFs on spatial PH curves 0.0 ERF is not intrinsic (depends on chosen basis (i. the Frenet frame (t. k) for R3) — but is inherently rational and non–singular at inﬂection points RMF vectors (u.7 0.rotation rates — RMF vs Frenet frame 3 Frenet frame rate of rotation rotation minimizing rational RMFs on spatial PH curves any space curve with a rational RMF must be a PH curve (since only PH curves have rational unit tangents) Choi & Han (2002): for PH curve with hodograph r￿(ξ) = A(ξ) i A∗(ξ) t(ξ) = A(ξ) i A∗(ξ) . we have an RRMF curve — i. a PH curve with a rational rotation–minimizing frame . |A(ξ)|2 q(ξ) = A(ξ) k A∗(ξ) |A(ξ)|2 2 1 deﬁnes the Euler–Rodrigues frame (ERF) — (t.0 0 0. |A(ξ)|2 p(ξ) = A(ξ) j A∗(ξ) . q) is better “reference” than Frenet frame (t. b(ξ) that maps the ERF vectors p(ξ). v(ξ)? “implicit” algebraic condition for RRMF curves Han (2008): PH curve deﬁned by A(ξ) = u(ξ) + v(ξ) i + p(ξ) j + q(ξ) k is an RRMF curve if and only if polynomials a(ξ).3 0. v). n. except degenerate (planar) curves ￿ u(ξ) = v(ξ) = 2 a(ξ)b(ξ) a2(ξ) − b2(ξ) p(ξ) − 2 q(ξ) .. n. b(ξ) exist such that ab￿ − a￿b uv ￿ − u￿v − pq ￿ + p￿q = 2 2 + v 2 + p2 + q 2 u a + b2 Hopf map representation with α(ξ) = u(ξ) + i v(ξ).8 0. u. p.6 0. v) must be obtainable from ERF vectors (p. b) exhibits a lot of “unnecessary” rotation (in the curve normal plane) seek rational rotation ERF → RMF Han (2008): is there a rational rotation in the normal plane deﬁned by two real polynomials a(ξ). a2(ξ) + b2(ξ) a (ξ) + b2(ξ) 2 a(ξ)b(ξ) a (ξ) − b (ξ) p(ξ) + 2 q(ξ) .2 0.9 1. q) through rational rotation in curve normal plane at each point of r(ξ) compared with the rotation-minimizing frame (t.1 0. b(ξ) exist. j.

β 2 ⇒ RRMF quintics have three less freedoms than general PH quintics Algorithm to construct RRMF quintics: freely choose α0. w2) = 4 b(t) = − t2 . β 2 = −1 + 2 i ￿ 1 3 − 4i 1. |α2|2 + |β 2|2 = γ |w2|2 . α2 and β 0. β 1 in terms of one free parameter.0 comparison of angular speeds for ERF and RMF . Sestini (2009): use Hopf map form with α(t) = α0 (1 − t)2 + α1 2(1 − t)t + α2 t2 . (|α0|2 + |β 0|2) (α0β 2 − α2β 0) = 2 (α0α1 + β 0β 1)(α0β 1 − α1β 0) . β 1. NOTE: can take w0 = 1 without loss of generality |α0|2 + |β 0|2 = γ |w0|2 . α0α2 + β 0β 2 + 2 (|α1|2 + |β 1|2) = γ (w0w2 + 2 |w1|2) . √ . v) in terms of ERF vectors (p.characterization of RRMF quintics Farouki. deﬁnes RRMF quintic ⇐⇒ w0. α1. w1. from RRMF constraints example RRMF quintic construction choose α0 = 1 + 2 i . 2 β1 = β 0 = −2 + i . =⇒ 1+i α1 = √ .4 t 0.0 0.6 0. α2 and β 0. q) ￿ 3 1 a(t) = (1 − t)2 + √ 2(1 − t)t + t2 . β 2 & obtain α1. β 2 of the two quadratic complex polynomials α(t) and β(t) satisfy the constraints (|α0|2 + |β 0|2) |α1α2 + β 1β 2|2 = (|α2|2 + |β 2|2) |α0α1 + β 0β 1|2 . Giannelli. Manni. one real + one complex constraint on α0. w1. 5 ERF 2 RMF 1 ERF Frenet 0 0. α1. α2 and β 0. α1α2 + β 1β 2 = γ w1w2 . γ ∈ R exist such that α0α1 + β 0β 1 = γ w0w1 .2 0. β(t) = β 0 (1 − t)2 + β 1 2(1 − t)t + β 2 t2 . 5 2 4 and (w0. −3 + i √ 2 α2 = 2 − i . β 1. w2 ∈ C. A PH quintic has a rational rotation–minimizing frame if and only if the coefﬁcients α0. sufﬁcient–and–necessary conditions Proposition 1. 5 2 RMF 3 angular speed ω polynomials deﬁning RMF vectors (u.8 1.

do not assume w0 = 1 • consider PH quintics in canonical form with r￿(0) = (1. T.“lingering doubts” about RRMF quintic conditions • constraints are of rather high degree — 4 and 6 • not invariant when “0” and “2” subscripts swapped (corresponds to the re–parameterization t → 1 − t) • do not easily translate to quaternion representation improved sufﬁcient–and–necessary conditions Proposition 2. 0. Rational rotation–minimizing frames on polynomial space curves of arbitrary degree. to appear Proposition 4. to appear • to avoid asymmetry. Journal of Symbolic Computation. Frenet . α0β 2 + α2β 0 = 2 α1β 1 . problem revisited in Farouki (2010). A spatial PH quintic deﬁned by the quaternion polynomial A0(1 − ξ)2 + A12(1 − ξ)ξ + A2 ξ 2 has a rational RMF if and only if A0 i A∗ + A2 i A∗ = 2 A1 i A∗ . with |r￿(t)| and |r￿(t) × r￿￿(t)| both polynomials in t — rational Frenet frames and rational curvatures. 0) • strategic switching between quaternion & Hopf map forms • new conditions are only quadratic in coefﬁcients • easy transformation quaternion ￿ Hopf map forms • obvious invariance on swapping “0” and “2” subscripts RRMF quintics constructed from new conditions RMF ERF Frenet rational RMFs on space curves of any degree R. such that (uv ￿ − u￿v − pq ￿ + p￿q)2 + (uq ￿ − u￿q − vp￿ + v ￿p)2 = h(u2 + v 2 + p2 + q 2) . the condition ab￿ − a￿b uv ￿ − u￿v − pq ￿ + p￿q = 2 2 + v 2 + p2 + q 2 u a + b2 RMF ERF can be satisﬁed if and only if a polynomial h(t) exists. Sakkalis (2010). Farouki and T. 2 0 1 Proposition 3. For A(t) = u(t) + v(t) i + p(t) j + q(t) k. A spatial PH quintic deﬁned by the complex polynomials α0(1 − ξ)2 + α12(1 − ξ)ξ + α2 ξ 2 and β 0(1 − ξ)2 + β 12(1 − ξ)ξ + β 2 ξ 2 has a rational RMF if and only if Re(α0α2 − β 0β 2) = |α1|2 − |β 1|2 . Polynomial ρ = (uv ￿ − u￿v − pq ￿ + p￿q)2 + (uq ￿ − u￿q − vp￿ + v ￿p)2 plays a key role in the theory of double PH curves.

In practice. e3) ⇒ e1 is the unit polar vector. • Always go to other people’s funerals — otherwise they won’t come to yours. pipes. there is.theory versus practice — a “philosophical” interlude theoretical astronomer — don’t believe an observation until there’s a theory to explain it observational astronomer — don’t believe a theory until there’s an observation to conﬁrm it famous sayings of Yogi Berra. • It was impossible to get a conversation going. everyone was talking too much. e3 orthogonal to o • angular velocity ω of rotation-minimizing directed frame (e1. e3 orthogonal to t • angular velocity ω of rotation-minimizing adapted frame (e1. 457–472 • camera orientation planning for cinematography. It’s too crowded. e2. e3) ⇒ e1 is the unit curve tangent. and the other half is physical. because you might not get there. e2. o = r/|r| • inﬁnitely many choices of image plane vectors e2. etc. Computer Animation and Virtual Worlds 20. e2. T. etc. • You better cut the pizza into four pieces. e3) is characterized by ω · t ≡ 0 rotation-minimizing directed frames — applications R. Spatial camera orientation control by rotation–minimizing directed frames. gas turbines. e3) is characterized by ω · o ≡ 0 . “In theory. virtual reality. video inspection. • for many applications. e2. RMDF image orientation can be achieved through software transformations • directed frame (e1. because I’m not hungry enough to eat six. t = r￿/|r￿| • inﬁnitely many choices of normal plane vectors e2. sportsman-philosopher • Baseball is ninety percent mental. • minimize surgeon disorientation in endoscopic surgery • related problem: ﬁeld de-rotator for altazimuth telescope • maintenance for aircraft engines. Farouki and C.” Yogi Berra Yankees baseball player. • Nobody goes there anymore. • You got to be very careful if you don’t know where you are going. Giannelli (2009). computer games. there is no difference between theory and practice. aspiring philosopher adapted & directed frames on space curve r(ξ) • adapted frame (e1.

λ(ξ) ≡ 0 ⇒ κ(ξ) ≡ 0 and υ(ξ) ≡ 0 ⇒ τ (ξ) ≡ 0 • λ = 0 identiﬁes polar inﬂection — r and r￿ linearly dependent • polar helix λ(ξ) = constant ⇐⇒ r(ξ) = on cone with apex at origin υ(ξ) . | r |3 (r × r￿) · r￿￿ | r × r￿ |2 • curve hodographs (derivatives) r￿(ξ) are widely used in CAGD • anti-derivative of function f (ξ) is indeﬁnite integral. consider only relative motion between camera & target) r(ξ) deﬁnes camera optical axis • unit polar vector o(ξ) = |r(ξ)| • let camera image plane. u. curvature. v) under map (r￿. | r × r￿ | r￿ × r￿￿ × t. u(ξ). polar curvature. | r￿ | n = b = (2) note that (t. b) → (o. v(ξ)) deﬁnes a right-handed orthonormal directed frame along r(ξ) r(ξ) × r￿(ξ) |r(ξ) × r￿(ξ)| ⇒ Frenet directed frame of a curve r(ξ) = Frenet adapted frame of its anti-hodograph. s(ξ) = ￿ f (ξ) dξ ρ = |r|. polar torsion of r(ξ) ￿ = parametric speed. but this correspondence does not extend to rational anti-hodographs (integral of rational function may incur transcendental terms) • polar curvature λ(ξ) ≡ 0 ⇐⇒ r(ξ) = line through origin polar distance. be spanned by two unit vectors u(ξ) and v(ξ) • if r(ξ). s(ξ) = r(ξ) • polar torsion υ(ξ) ≡ 0 ⇐⇒ r(ξ) = in plane through origin • hence. r￿) call (1) the Frenet directed frame. orthogonal to o(ξ). torsion of anti-hodograph. |r| u = r × r￿ × o. | r￿ × r￿￿ | v = r × r￿ | r × r￿ | r￿ × r￿￿ | r￿ × r￿￿ | (1) with Frenet frame from differential geometry t = r￿ . (2) the Frenet adapted frame deﬁne anti-hodograph (indeﬁnite integral) s(ξ) = ￿ r(ξ) dξ • set u(ξ) = v(ξ) × o(ξ) — (o(ξ). r￿(ξ) linearly independent. s(ξ) properties of “anti-hodograph” — s(ξ) = ￿ r(ξ) dξ polar differential geometry of space curve r(ξ) | r × r￿ | . r￿￿) → (r. λ = υ = • inﬁnitely many anti-hodographs — just translates of each other • s(ξ∗) is a cusp of anti-hodograph ⇒ r(ξ) traverses origin at ξ = ξ∗ • s(ξ∗) is an inﬂection of anti-hodograph ⇒ tangent line to r(ξ) goes through origin for ξ = ξ∗ • polynomial curve ⇐⇒ polynomial anti-hodograph. set v(ξ) = o = compare directed frame deﬁned above r . n.camera orientation frame along space curve r(ξ) • assume target object ﬁxed at origin (for moving target.

v) do = e × o. o) polar distance ρ polar curvature λ polar torsion υ polar distance. | r × r￿ | | r￿ × r￿￿ | . t) parametric speed σ curvature κ torsion τ Frenet directed frame polar vector o principal axis u bi-axis vector v image plane = span(u. λ = υ = arc-length derivatives of (o. polar torsion of r(ξ) ρ = |r|. n. s(ξ) = r(ξ) dξ connection between Frenet adapted & directed frames (t. v) are both orthonormal frames for R3      o o·t o·n o·b t  u  =  u · t u · n u · b  n  v v·t v·n v·b b elements of matrix M ∈ SO(3) in terms of r. ds du = e × u. integral of polar torsion w. b) osculating plane = span(t. u.r. ds ρ (λ v + υ o) σ ρ￿ 2 angular velocity of directed frame ω = | e | = λ + υ2 σ polar Darboux vector e = each property of the Frenet directed frame of r(ξ) coincides with the corresponding property of the Frenet adapted frame ￿ of its anti-hodograph. v·n = σ (r × r￿ ) · r￿￿ . u.. p. ds dv = e×v. ρσ r · r￿ (r × r￿ ) · (r￿ × r￿￿ ) . r￿. corresponding to different integration constants (maintain ﬁxed angles relative to each other) • angle function ψ(ξ) can be determined exactly for spatial P curves by rational function integration (r × r￿ ) · (r￿ × r￿￿ ) . q) be rotation-minimizing directed frame on r(ξ) obtain (p. σ = |r￿| : o·t = u·t = r · r￿ . ρ | r￿ × r￿￿ | (r · r￿ ) (r × r￿ ) · r￿￿ . ρ σ | r × r￿ | | r￿ × r￿￿ | v·b = u·b = − v · t = 0. ρ = |r|.e. ρσ o·n = − u·n = computation of rotation-minimizing directed frames let (o. q) from (u. v)    o￿ 0 λ ￿  u = ρ  −λ 0 v￿ 0 −υ | r × r￿ | . n) rectifying plane = span(b. v) motion plane = span(o. anti-hodograph arc length) • RMDF angular velocity ω omits υ o term from polar Darboux vector • inﬁnitely many directed RMFs. ρ | r × r￿ | | r￿ × r￿￿ | | r × r￿ | .Frenet-Serret equations for directed frame (o. u. | r × r￿ | | r￿ × r￿￿ | (r × r￿ ) · (r￿ × r￿￿ ) . | r |3   0 o υ  u  0 v (r × r￿) · r￿￿ | r × r￿ |2 corresponding properties of the Frenet adapted and directed frames on space curves Frenet adapted frame tangent vector t principal normal n binormal vector b normal plane = span(n. v) by rotation in image plane ￿ ￿ ￿ ￿￿ ￿ p cos ψ sin ψ u = q − sin ψ cos ψ v ￿ using anti-hodograph transformation. ρ σ | r￿ × r￿￿ | o·b = (r × r￿ ) · r￿￿ . ψ = − υ ρ dξ (i. b) and (o. r￿￿.t. polar curvature. u) orthogonal plane = span(v.

cθ 1 + c2 + c2θ2 . Left: polar vectors. c2θ (θ cos θ − sin θ) + cos θ. υ = r(1 + c2 + c2θ2) r(1 + c2θ2)3/2 polar distance. h) √ . cos θ. r(θ) = (r cos θ. polar curvature. sin θ. 1) √ . r sin θ. υ = 2 . 1 + c2θ2 u = (− c2θ (cos θ + θ sin θ) − sin θ. r sin θ. − c (cos θ + θ sin θ). c θ) √ .example: circular camera path r(θ) = (r cos θ. polar torsion — all constant ρ = r λ = θ ψ = −￿ . r 2 + h2 (−h cos θ. r sin θ. c) √ √ . polar torsion √ √ 1 + c2θ2 1 + c2θ2 − 1 −1 1 ψ = tan − tan − . h) (r cos θ. h) o= u = (− sin θ. polar curvature. . r 2 + h2 r + h2 polar distance. v= note — principal axis vector u coincides with curve tangent t r h . RMDF orientation relative to Frenet directed frame — linear in θ views of ellipsoid with camera image plane oriented using Frenet directed frame (upper) and rotation-minimizing directed frame (lower) example: helical path r(θ) = (r cos θ. r 2 + h2 directed frames on circular path. r sin θ. kθ) with c = k/r o = (cos θ. Center: image-plane vectors for directed Frenet frame. Right: image-plane vectors for the rotation-minimizing directed frame. −h sin θ. 1 + (r/h)2 ￿ r 2 + h2 . c c c RMDF orientation relative to Frenet directed frame −1 . 0) . 1 + c2θ2 1 + c2 + c2θ2 v = (c (sin θ − θ cos θ). 1 + c2 + c2θ2 λ = √ ρ = r ￿ 1 + c2θ2 . r) √ .

r(θ) = (r cos θ. Right: image-plane vectors for the rotation-minimizing directed frame. . than to be a fool for the rest of your life.directed frames on helical path. applications for rotation-minimizing frames • RRMF curves = PH curves with rational rotation–minimizing frames • quaternion and Hopf map characterizations of RRMF quintics • divisibility characterization for RRMF curves of any degree • Yogi Berra’s insights on relationship between theory and practice • rotation-minimizing directed frames in camera orientation control • anti-hodograph and polar differential geometry of space curves ANY QUESTIONS ?? It is better to ask a simple question. old Chinese proverb Please note — Answers to all questions will be given exclusively in the form of Yogi Berra quotations. Center: image-plane vectors for Frenet directed frame. kθ) views of ellipsoid with camera image plane oriented using Frenet directed frame (upper) and rotation-minimizing directed frame (lower) Left: polar vectors. and perhaps seem like a fool for a moment. r sin θ. algorithms. closure • theory.

Real-time CNC interpolator algorithms for motion control Rida T. because I’m tired of answering that question.1 mm • real–time interpolator converts input r(ξ). . z axes driven by independent DC electric motors • 5–axis CNC machine also incorporates rotary a. University of California. Davis — synopsis — • fundamentals of CNC machines & real–time interpolators • Taylor series interpolators for general parametric curves • real–time interpolators for Pythagorean–hodograph curves • experimental performance — PH curves versus G codes • variable feedrates for constant material removal rate • inverse dynamics problem for minimization of path error • optimal orientations for contour machining of surfaces fundamentals of CNC machines • linear x. Department of Mechanical & Aeronautical Engineering. . . 2∆t. Farouki Concerning future research directions . . y. . . V into reference points r(ξ1).some famous Yogi Berra responses • If you ask me anything I don’t know. b axes • machine input = path geometry (parametric curve) r(ξ) and feedrate (speed) V along path. . I’m not gonna answer. 3∆t. at sampling times ∆t. . • The future ain’t what it used to be.01 − 0.1 − 1.0 millisecond • position encoders measure actual location of each axis → resolution = basic length unit (BLU) = 0. r(ξ3). r(ξ2). . • I wish I knew the answer to that. constant or variable • sampling frequency of software controller: f = 1 − 10 kHz → sampling interval ∆t = 1/f = 0.

. . . 3∆t. and its derivative (zero steady–state error & fast response) • choice of controller gains (proportionality constants) must ensure stability of feedback control system • we focus on the real–time interpolator algorithm here 3-axis “open architecture” CNC mill • MHO Series 18 Compact Mill • 18” × 18” × 12” work volume • Yaskawa brushless DC motors • zero-backlash precision ball screws • linear encoders. r(ξ3). etc. to continuously adjust current to axis drive motors • basic P controller — motor current proportional to position error • PID controller — motor current proportional to position error. • accurate path speciﬁcation =⇒ voluminous part programs • block look-ahead problem for acceleration/deceleration management • aliasing effects in HSM.001” accuracy • MDSI OpenCNC control software • custom real-time interpolators “conventional” vs. when G code length comparable to V ∆t . p2. . T = tool selection.Y = target point. . . etc. ± 0. . p3. controller compares measured positions p1. 200 in/min. spindle speed ≤ 50. 2. N01 G01 X0 Y0 F37200 N02 G01 X-41 Y87 N03 G01 X-62 Y189 N04 G02 X-23 Y478 I654 J0 N05 G01 X474 Y1015 . . “high-speed” machining • machining times are major determinant of product cost • usual: feedrate ≤ 100 in/min. . (especially for intricate curved tool paths) • resonance effects at machine natural frequencies become major consideration • most CNC machines signiﬁcantly under-perform in practice — control software. 3. etc. is usually the limiting factor G codes – traditional tool path speciﬁcation approximate general curved paths by many short linear/circular moves G01 = linear move. 000 rpm • in HSM inertial forces may dominate cutting forces. 2∆t. . . its integral. of machine (from encoders) with reference points r(ξ1). r(ξ2). . 000 rpm • HSM: feedrate ≤ 1. from real–time interpolator • controller uses components of position errors ek = r(ξk ) − pk .J = offsets from current location to circle center F = feedrate. spindle speed ≤ 6. . S = spindle speed. friction. I. k = 1. G02/G03 = clockwise/anti-clockwise circular move X.fundamentals of CNC machines (continued) • at each sampling time ∆t. not hardware. .

where dots denote time derivatives ˙ ¨ =⇒ need expressions for time derivatives ξ(t). . . Reference–point parameter value ξk+1 obtained from preceding value ξk by Taylor–series expansion ˙ ξk+1 = ξk + ξ(tk )∆t + 1 2 ¨ ξ(tk ) (∆t)2 + · · · of ξ(t) about t = tk = k∆t. For a given curve r(ξ). . 2. . ds dκ V ￿￿ = ￿ σ￿ dκ d2κ + σ2 2 ds ds ￿ dV + dκ ￿ σ dκ ds ￿ 2 d2V dκ2 . in terms of derivatives with respect to variable that V is speciﬁed as a function of time-dependent feedrate: V (t) — acceleration/deceleration rates V￿ = σ dV . ξ(t). V dt V ￿￿ = σ ￿ dV σ2 − 3 V dt V ￿ dV dt ￿2 + σ 2 d2V V 2 dt2 etc. compares actual position (measured by encoders on machine axes) with reference point (computed by real-time interpolator) • real-time CNC interpolator algorithm — given parametric curve r(ξ) and speed (feedrate) function V . ξ = σ σ2 ￿￿ ￿ ￿ . compute reference-point parameter values ξ1. σ etc.. of ξ(t). ds V ￿￿ = σ ￿ dV d2V + σ2 2 ds ds where primes indicate derivatives with respect to ξ.real-time CNC interpolators • computer numerical control (CNC) machine: digital control system • in each sampling interval (∆t ∼ 10−3 sec) of servo system. . .. . the parametric speed σ and feedrate V are deﬁned in terms of cumulative arc length s along r(ξ) by σ = |r￿(ξ)| = ds . in real time: ￿ ξk Taylor series expansions Suppose ξ(t) speciﬁes time variation of the parameter along r(ξ) when traversed with (constant or variable) feedrate V . . V k = 1. curvature-dependent feedrate: V (κ) — control material removal rate V￿ = σ dκ dV . . must express V ￿. arc-length-dependent feedrate: V (s) — distance along trajectory V￿ = σ dV . σV − 3σ V ¨ σV − σ ￿￿V ˙2 ξ + ξ . σ σ ￿￿ = r￿ · r￿￿￿ + |r￿￿|2 − σ ￿2 . dξ V = ds dt 0 |r￿(ξ)| dξ = k∆t . . . ξ = ξ. V ￿￿. . • general parametric curve — compute ξk by Taylor series expansion • Pythagorean-hodograph (PH) curves — analytic reduction of “interpolation integral” ⇒ accurate & efﬁcient real-time interpolator Time derivatives can be converted to parametric derivatives using ds dξ d V d d = = dt dt ds dξ σ dξ Successive applications of d/dt give σV ￿ − σ ￿V ˙ V ¨ ˙ . Derivatives of the parametric speed can be expressed recursively as σ￿ = r￿ · r￿￿ . . ξ2. ξ = σ2 σ2 For variable feedrate.

Computer Aided Geometric Design 11. Math. 503–505 (1972) R. Res.V (κ) case requires arc–length derivatives of curvature: κ = (r￿ × r￿￿) · z . σ3 dκ (r￿ × r￿￿￿) · z − 3σ 2σ ￿κ = . etc. Farouki and T. The conformal map z → z 2 of the hodograph plane. Amer. rotation-minimizing frames. y ￿(t)) = w2(t) PH quintics (blue) have similar shape freedoms to “ordinary” cubics (red) . Sakkalis. Monthly 79. Develop. 34. 736–752 (1990) R. 363–390 (1994) complex model for planar PH curves choose complex polynomial w(t) = u(t) + i v(t) planar Pythagorean hodograph — r￿(t) = (x￿(t). IBM J. Pythagorean hodographs. Kubota. Pythagorean triples in unique factorization domains. Farouki. ds σ4 Pythagorean-hodograph (PH) curves r(ξ) = PH curve in Rn ⇐⇒ components of hodograph r￿(ξ) are elements of a Pythagorean (n + 1)–tuple of polynomials PH curves exhibit special algebraic structures in their hodographs • rational offset curves rd(ξ) = r(ξ) + d n(ξ) • polynomial parametric speed σ(ξ) = |r￿(ξ)| = • polynomial arc-length function s(ξ) = • energy integral E = ￿ 1 (r￿￿ × r￿￿￿ + r￿ × r￿￿￿￿) · z − 3σ(2σ ￿2 + σσ ￿￿)κ − 7σ 3σ ￿(dκ/ds) d2κ = . T. T. 2 ds σ5 problems with Taylor series interpolators • ﬁnite # of terms in Taylor series =⇒ unknown truncation error • coefﬁcients of higher–order terms very complicated & costly to compute =⇒ incompatible with real–time computing • several papers give erroneous coefﬁcients for Taylor interpolators ds dξ ￿ ξ 0 |r￿(ξ)| dξ κ2 ds has closed-form evaluation 0 • real-time CNC interpolators. Pythagorean triples — planar PH curves   x￿(t) = u2(t) − v 2(t)  y ￿(t) = 2 u(t)v(t)   σ(t) = u2(t) + v 2(t) key features of planar PH curves ◦ planar PH cubics come from unique curve — Tschirnhausen’s cubic insufﬁciently ﬂexible for general free–form design ◦ planar PH quintics can interpolate arbitrary Hermite data — solve nested quadratic equations → always four distinct solutions ◦ extend to planar C 2 PH quintic splines — “tridiagonal” system of 2N +k quadratic equations in N complex unknowns x￿2(t) + y ￿2(t) = σ 2(t) ⇐⇒ K.

Pythagorean quartuples — spatial PH curves   x￿(t) = u2(t) + v 2(t) − p2(t) − q 2(t)   ￿  y (t) = 2 [ u(t)q(t) + v(t)p(t) ]  z ￿(t) = 2 [ v(t)q(t) − u(t)p(t) ]    σ(t) = u2(t) + v 2(t) + p2(t) + q 2(t) x￿2(t) + y ￿2(t) + z ￿2(t) = σ 2(t) ⇐⇒ R. etc. rational rotation–minimizing frame curves. and rational parameterization of curves and surfaces. y ￿(t). An algebraic approach to curves and surfaces on the sphere ¨ and on other quadrics. .0105 p5 8 50 segments ! = 0. spin representation. 2 12 p1 25 segments ! = 0. Right: approximation of path to various prescribed tolerances using piecewise-linear G codes.0006 0 4 8 12 16 Left: analytic tool path description (quintic PH curve). P. and B. Juttler. double PH curves (rational Frenet frames). Moon. Clifford algebra. and H. ψ = helix angle) and κ/τ = constant ◦ spatial PH quintics can interpolate arbitrary Hermite data: solve three quadratic equations → two-parameter family of interpolants ◦ extend to spatial C PH quintic splines — selection of many free parameters still an open problem ◦ many special types — helical polynomial curves. Hoschek. Dietz. Choi.0025 p0 4 p4 100 segments ! = 0. Lee. 5-48 (2002) quaternion model for spatial PH curves Bezier control polygons of rational offsets offsets exact at any distance choose quaternion polynomial A(t) = u(t) + v(t) i + p(t) j + q(t) k planar PH curves have rational offset curves for use as tool paths spatial Pythagorean hodograph — r￿(t) = (x￿(t). J. D. I. Advances in Computational Mathematics 17. z ￿(t)) = A(t) i A∗(t) key features of spatial PH curves real-time CNC interpolators for Pythagorean-hodograph (PH) curves ◦ spatial PH cubics are all helical curves — tangent satisﬁes a · t = cos ψ (a = helix axis. 211–229 (1993) H. Computer Aided Geometric Design 10. S.

for any easily integrable function V (t) — useful for acceleration and deceleration management constant.8 1. repertoire of feedrate variations for PH curves real-time CNC interpolator: given parametric curve r(ξ) and feedrate variation V .4 0.0 b c b a c s/S 0. incurred by the ﬁnite sampling frequency and discrete nature of the piecewise-linear path description. the PH curve interpolator continues to yield impeccable performance – but the performance of the G code interpolator is severely degraded by “aliasing” effects.comparative feedrate performance: 100 & 200 ipm 200 150 100 50 0 200 150 100 50 0 0 1 2 3 4 5 time (sec) 6 7 8 0 1 2 3 4 5 time (sec) 6 7 8 G codes 200 ipm PH curve 200 ipm G codes 100 ipm PH curve 100 ipm comparative feedrate performance: 400 & 800 ipm 800 600 400 200 0 800 600 400 200 0 0 1 time (sec) 2 3 0 1 time (sec) 2 3 G codes 800 ipm PH curve 800 ipm G codes 400 ipm PH curve 400 ipm feedrate (ipm) feedrate (ipm) The G code and PH curve interpolators both give excellent performance (red) at 100 and 200 ipm. linear or quadratic dependence V (s) on arc length s ◦ time-dependent feedrate. ξ2.6 0. compute reference-point parameter values ξ1. At 400 & 800 ipm. from ￿ ξk ￿ |r (ξ)| dξ = k∆t V 0 usual approach — invoke a truncated Taylor series expansion ￿ ￿ V r￿ · r￿￿ (∆t)2 V V + ··· ξk = ξk−1 + ∆t + 2 V ￿ − 2 σ σ σ 2 PH curves admit analytic reduction of the interpolation integral. for many feedrate variations of practical interest: ◦ constant V. quadratic arc length dependence feedrate (ipm) feedrate (ipm) a 10 V 8 6 4 2 0 0.2 0. while the PH curve yields smooth variations. linear. . . The “staircase” nature of the x and y feedrate components (blue and green) for the G codes indicate faithful reproduction of the piecewise-linear path.0 ◦ curvature-dependent feedrate for constant material removal rate 1 (MRR) at ﬁxed depth of cut δ — V (κ) = V0 [ 1 + κ(d − 2 δ) ]−1 . .

5 b 0.476 B-32.189 R-32.B.0 0.861 R-28.5 δ) ] 0. A. 1 1 + κ(ξ) (d − 2 δ) 0.W = variable feedrate type & parameters N05 N10 N15 N20 N25 N30 N35 N40 N45 N50 G05 G05 G05 G05 G05 G05 G05 G05 G05 G05 H5 F0 U37200 X1092 Y-294 A-31.887 Q7.389 Q-14.197 R-25.C.Y = target point.2 1.25 250 Hz sampling 0.365 X2226 Y1722 A-32.849 C-3.356 Q-41.3 time (sec) 1.761 P-28.525 X756 Y1050 A-13.062 X1470 Y-1386 A-31.378 B40.426 C-28. T. G–F.267 C-32.75 0.R = coefﬁcients of u(t). a linear path (center). V = V0 0. v(t) X. one should use the curvature–dependent feedrate V (ξ) = V0 .987 B3.2 1. In each case.514 C31.5 c d 1.0 1.668 B23.794 X2226 Y-294 A-28.326 C-13.746 Q-50.927 R-36. to maintain constant MRR. J.476 P13.987 P-36.647 C21. International Journal of Machine Tools & Manufacture 39.481 B-24.P.365 Q-57. κ = –1 / r linear.896 B-41.887 X3444 Y504 A-36. κ = 0 anticlockwise.761 B-30. the MRR can be expressed in terms of the curvature 1 as V0 δ [ 1 + κ(d − 2 δ) ].851 R-28.2 0. or curvature . arc length.material removal rate (MRR) as function of curvature δ δ curvature-dependent feedrate for constant MRR V0 r δ r V0 feedrate variation V / V0 a rd(ξ) c d r(ξ) b V0 clockwise.026 B-38.560 R2.4 0.Q.V.668 P-28.378 P-25.5 G codes for PH curve tool paths G05 = quintic PH curve.6 fractional arc length s / S 0.0 a 0.389 X2100 Y504 A8.972 R-14.746 X0 Y0 A-3.304 R-16.0 1.4 1. 123–142 (1999) (acceleration magnitude)2 = ￿ dV dt ￿2 + κ2 V 4 allows combination of traditional (linear/circular) G codes and PH quintics.5 quintic acceleration (ipm/sec) cubic acceleration (ipm/sec) linear 4800 3600 2400 1200 0 4800 3600 2400 1200 0 4800 3600 2400 1200 0 1.537 C-31.00 4 8 12 16 20 24 28 32 36 40 curve arc length (mm) 44 48 52 56 60 time-dependent feedrates for acceleration & deceleration proﬁles acceleration (ipm/sec) feedrate (ipm) 800 600 400 200 0 feedrate (ipm) 800 600 400 200 0 feedrate (ipm) 800 600 400 200 0 1. G codes for the speciﬁcation of Pythagorean–hodograph tool paths and associated feedrate functions on open–architecture CNC machines. Manjunathaiah. and an anti–clockwise circular path of radius r (right).062 Q42.934 R.1 1.436 R13.526 C-36.356 X1134 Y252 A21.3 time (sec) 1. Farouki.579 B-23.50 variable feedrate.0 1.1 1.481 P16.4 1.026 P-32. Yuan.0 1. κ = 1 / r 2.25 average cutting force (kN) Volume removed (yellow area) by a cylindrical tool of radius d moving with feedrate V0 through depth of cut δ for: a clockwise circular path of radius r (left).0 1.934 Q-16.8 1.525 Q-15. V = V0 / [ 1 + κ (d – 0.896 P2. with variable feedrates — dependent on time. Hence.892 C8.00 constant feedrate.794 Q-36.579 P-14. F & U.

σV ￿ − 3σ ￿V ¨ σV ￿￿ − σ ￿￿V ˙2 ξ = ξ + ξ . d d3 ˙ d ˙ ¨d = ξ3 3 + 3 ξ ξ 2 + ξ . . But commanded path (X(ξ). integral. its time derivatives are V σV ￿ − σ ￿V ˙ ˙ ¨ ξ = .inverse dynamics problem for path error minimization block diagram of CNC machine x–axis drive with PID controller inertia (resistance to motion) and damping (frictional energy dissipation) of CNC machine axes prevent exact execution of commanded motion develop dynamic model of machine/controller system.. ¨ ˙ . consider only x–axis motion (same principles for y. and V = ds/dt = feedrate. Y (ξ)) is traversed with (constant or variable) feedrate V . If ξ(t) speciﬁes time variation of parameter when (X(ξ). subject to machine dynamics.. ¨ ˙ ax x + bx x + cx x + x = dx X + ex X + X . Y (ξ)) speciﬁed by general parameter ξ. expressed in terms of linear ordinary differential equations transform independent variable from the time t to the curve parameter ξ : constant coefﬁcients → polynomial coefﬁcients revert differential equations: swap input & output dependent variables solve reverted differential equations for modiﬁed input path that.. . . σ σ2 and we have d ˙d . Y (ξ)) is a PH curve. bx. . . B = x–axis inertia and damping ω. ... ˙ ay y + by y + cy y + y = dy Y ¨ ˙ where dots indicate time derivatives. βx(ξ). exactly yields desired output path for brevity. . ki. = ξ2 2 + ξ dt2 dξ dξ 3 2 . ¨ + ey Y + Y . dt3 dξ dξ dξ .. αy (ξ) y ￿￿￿ + βy (ξ) y ￿￿ + γy (ξ) y ￿ + δy (ξ) y = λy (ξ) Y ￿￿ + µy (ξ) Y ￿ + νy (ξ) Y . Y (t)) by differential equations of the form ... etc. derivative gains u = output voltage from controller i = current from current ampliﬁer T = torque from DC electric motor J. constant coefﬁcients ax. rather than time t. depend on the machine/controller physical parameters. kd = proportional. y(t)) determined from commanded path (X(t). where primes denote derivatives with respect to ξ. σ2 σ2 Hence transformed differential equations become αx(ξ) x￿￿￿ + βx(ξ) x￿￿ + γx(ξ) x￿ + δx(ξ) x = λx(ξ) X ￿￿ + µx(ξ) X ￿ + νx(ξ) X . = ξ dt dξ 2 d2 ˙ d ¨d . etc. are polynomials in ξ if (X(ξ). Transform independent variable: time t → curve parameter ξ d ds dξ d V d = = . θ = motor shaft angular speed & position rg = transmission ratio (angular → linear conversion) machine/controller dynamics CNC machine executes actual path (x(t). dt dt ds dξ σ dξ where σ = ds/dξ = parametric speed. ξ = ξ. and αx(ξ). z axes) X + – e kp + ki / s + kd s u ka i kt T 1 / (Js+B) ω 1/s θ rg x X = commanded position from real–time interpolator x = actual position as measured by position encoders e = X − x = instantaneous x–axis position error kp.

Simplest case: P controller with ki = kd = 0 ⇒ λx(ξ) = µx(ξ) ≡ 0 and ˆ ˆ λy (ξ) = µy (ξ) ≡ 0. Extreme variation of parametric speed and curvature on quintic PH curve.12 m/s original path modified path original curve modified curve Left: quintic PH curve deﬁning desired path (X(ξ). X = σ3 2 ￿￿ ￿ ￿ 2 ￿ 3 by σV Y + V [ by (σV − σ V ) + cy σ ] Y + σ Y ˆ . commanded 4 3 2 1 –60 0 0.25 0. Y (ξ)). ODEs with polynomial coefﬁcients & right–hand sides do not. Need good numerical method to approximate solutions on ξ ∈ [ 0.50 0. 1 ] by polynomial or piecewise–polynomial functions: • Chebyshev economization methods • linear least–squares approximation • interpolation at Chebyshev nodes • . Can solve exactly for X. NOTE: ki ￿= 0 ⇒ zero steady–state error and kd ￿= 0 ⇒ fast response. Y = σ3 ´ Modiﬁed path exactly determined as higher–order rational Bezier curve! For more sophisticated PI and PID controllers. example: quintic PH curve and P controller comparison of output for original and modiﬁed paths P controller with gain kp = 10 and constant feedrate V = 0.Now revert the differential equations — solve “backwards” to ﬁnd input required to produce desired output. for a P controller with gain kp = 10 and constant feedrate V = 0. Right: modiﬁed ˆ ˆ path (X(ξ). admit polynomial solutions. in general. Y as bxσV 2X ￿￿ + V [ bx(σV ￿ − σ ￿V ) + cxσ 2 ] X ￿ + σ 3X ˆ . ˆ ˆ ˆ λy (ξ)Y ￿￿ + µy (ξ)Y ￿ + νy (ξ)Y = αy (ξ)Y ￿￿￿ + βy (ξ)Y ￿￿ + γy (ξ)Y ￿ + δy (ξ)Y. output = desired path (X(ξ).12 m/s. Y (ξ) with known polynomials in ξ as coefﬁcients and right–hand sides. ˆ ˆ Input = modiﬁed path (X(ξ). the executed motion deviates signiﬁcantly from the desired path. the executed motion is essentially indistinguishable from the original commanded path. Y . . .0 0.0 0. Y (ξ)) ˆ ˆ ˆ λx(ξ)X ￿￿ + µx(ξ)X ￿ + νx(ξ)X = αx(ξ)X ￿￿￿ + βx(ξ)X ￿￿ + γx(ξ)X ￿ + δx(ξ)X.0 parametric speed σ 0 executed commanded executed –20 –40 curvature κ 0.75 arc length s 1. Y (ξ)) that compensates for the machine/controller dynamics. etc.50 0. obtain ﬁrst and second ˆ ˆ order differential equations for X.75 arc length s 1. . ˆ ˆ Must solve initial value problem for linear ODEs in X(ξ). In the former case.0 Comparison of commanded and executed motions for original (left) and modiﬁed (right) paths.25 0. Y (ξ)). In the latter case.

12 m/s. Modiﬁed path is approximated by a degree 30 polynomial. contour machining of free-form surfaces Given parametric surface r(u.6 –0. 1 ].0 –0.2 –0.4 0.8 0. constructed by interpolation at the Chebyshev nodes on ξ ∈ [ 0. optimal section-plane orientation For “best quality” contours — that minimize scallop height of machined surface between adjacent tool paths — we need to ﬁnd orientation N of the planes Π that minimizes N · n for (u. Commanded and executed motions for original (left) and modiﬁed (right) paths.0 –0. N should be “as far as possible” from the set { n } of all normals to the surface r(u. 1 ] . using a PI controller with gains kp = ki = 10 and constant feedrate V = 0. The modiﬁed path incurs greater peak accelerations. 1 ] and set Π of parallel planes with normal N and equidistant spacing ∆.2 modified path 0. requiring a higher motor torque capacity. v) ∈ [ 0. In contour machining.4 0. v). In other words.axis accelerations for original and modiﬁed paths 0. v) ∈ [ 0. |ru × rv | (u. . 1 ] × [ 0.8 –1. v) for (u. 1 ].4 –0.2 0. planar sections of r(u.2 –0. 1 ] × [ 0. Spacing between adjacent contours is ￿ ￿ ≈ ∆/ 1 − (N · n)2. where surface normal n is deﬁned by n = ru × rv . v) ∈ [ 0. v). 1 ] × [ 0.0 modified path original path results for the PI controller original path modified path original path y axis acceleration ( m/s2 ) 0 1 2 3 4 5 6 time (sec) 7 8 9 10 0 1 2 3 4 5 6 time (sec) 7 8 9 10 commanded executed commanded executed Comparison of x and y axis accelerations for original and modiﬁed paths.6 x axis acceleration ( m/s2 ) 0. these surface contours deﬁne the contact curves of a spherical cutter with r(u. v) by planes of Π are the surface contours.

al–Kandari. −n • perform stereographic projection of Gauss map from S 2 to R2 • compute medial axis transform on complement of Gauss map • center of largest circle in medial axis transform identiﬁes vector N furthest from all normals n to r(u. Pottmann. M. Smith. R. and H. T. Optimal slicing of free–form surfaces. on unit sphere S 2 • Gauss map boundary = subset of images of the parabolic lines (zero Guassian curvature) and patch boundaries on S 2 • symmetrize Gauss map by identifying opposed normals n. S.strategy for optimal orientation N of section planes • set of normals {n} = Gauss map of surface. 43–64 (2002) parabolic lines on free-form surfaces Gauss map computation for free-form surfaces medial axis transform for complement of Gauss map . Computer Aided Geometric Design 19. v) • also applies to rapid prototyping / layered manufacturing processes T. Farouki.

closure • Pythagorean-hodograph curves ideally suited to CNC machining • PH curve real–time interpolator algorithms for feedrates dependent on time. arc length. or curvature • anayltic curve interpolators give smoother and more accurate realization of high feedrates and acceleration rates than G codes • PH curves amenable to solution of inverse dynamics problems to compensate for inertia & damping of machine axes • spatial motion planning problems — optimal orientation of section planes for contour machining & use of rotation–minimizing frames in 5–axis machining .

scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->