102
Approximation by linear splines Approximation by conic splines Approximation by biarc and bihelix splines Approximation with linear, biarc, conic and bihelix splines Gert Vegter (joint work with Sunayana Ghosh) Johann Bernoulli Institute for Mathematics and Computer Science University of Groningen The Netherlands INRIA, Sophia Antipolis, February 4, 2010 Gert Vegter Approximation with linear, biarc, conic and bihelix splines

Approximation with linear, biarc, conic and bihelix splinesgert/documents/2010/geometric... · 2010. 7. 14. · Approximation by linear splines Approximation by conic splines Approximation

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation with linear, biarc, conic andbihelix splines

    Gert Vegter (joint work with Sunayana Ghosh)

    Johann Bernoulli Institute for Mathematics and Computer ScienceUniversity of Groningen

    The Netherlands

    INRIA, Sophia Antipolis, February 4, 2010

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Splines in 2D

    Linear spline Conic spline

    0.0 0.5 1.0 1.5 2.0

    -1.0

    -0.5

    0.5

    1.0

    Biarc spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation of smooth curves

    Given: smooth (C2 or better) curve C in the plane, ε > 0

    Goal: approximate C with spline(i) within Hausdorff-distance ε(ii) of low complexity

    Smoothness Approximation Complexity(nr. of patches)

    C2 linear spline O(ε−1/2)C3 biarc spline O(ε−1/3)C4 parabolic spline O(ε−1/4)C5 conic spline O(ε−1/5)C3 bihelix spline (3D) O(ε−1/3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Orders of magnitude

    Example: ε = 10−6

    Number of patches:

    linear spline ε−1/2 1000biarc spline ε−1/3 100parabolic spline ε−1/4 32conic spline ε−1/5 16bihelix spline (3D) ε−1/3 100

    Constants: this talk

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    General strategy

    -1.0 -0.5 0.5 1.0 1.5 2.0

    -1.2

    -1.0

    -0.8

    -0.6

    -0.4

    -0.2

    Smooth curve α

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    General strategy

    Spline: offset curve β(s) = α(s) + f (s) N(s), s ∈ I.Distance function f gives HD: δH(α, β) =|| f ||∞= maxs∈I |f (s)|Intersections: α(si) = β(si), s0 ≤ s1 ≤ . . . ≤ sn, so

    f (s) = (s − s0) · · · (s − sn) [s0, . . . , sn, s]f︸ ︷︷ ︸divided difference

    With σ = sn − s0 (and Hermite-Genocchi):

    f (s) = 1(n+1)! f

    (n+1)(s0) (s − s0) · · · (s − sn) + O(σn+2)

    Goal: express f (n+1)(s0) in geometric invariants of α:(affine) curvature and its derivatives

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    General strategy

    Spline: offset curve β(s) = α(s) + f (s) N(s), s ∈ I.Distance function f gives HD: δH(α, β) =|| f ||∞= maxs∈I |f (s)|Intersections: α(si) = β(si), s0 ≤ s1 ≤ . . . ≤ sn, so

    f (s) = (s − s0) · · · (s − sn) [s0, . . . , sn, s]f︸ ︷︷ ︸divided difference

    With σ = sn − s0 (and Hermite-Genocchi):

    f (s) = 1(n+1)! f

    (n+1)(s0) (s − s0) · · · (s − sn) + O(σn+2)

    Goal: express f (n+1)(s0) in geometric invariants of α:(affine) curvature and its derivatives

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    General strategy

    Spline: offset curve β(s) = α(s) + f (s) N(s), s ∈ I.Distance function f gives HD: δH(α, β) =|| f ||∞= maxs∈I |f (s)|Intersections: α(si) = β(si), s0 ≤ s1 ≤ . . . ≤ sn, so

    f (s) = (s − s0) · · · (s − sn) [s0, . . . , sn, s]f︸ ︷︷ ︸divided difference

    With σ = sn − s0 (and Hermite-Genocchi):

    f (s) = 1(n+1)! f

    (n+1)(s0) (s − s0) · · · (s − sn) + O(σn+2)

    Goal: express f (n+1)(s0) in geometric invariants of α:(affine) curvature and its derivatives

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    General strategy

    Spline: offset curve β(s) = α(s) + f (s) N(s), s ∈ I.Distance function f gives HD: δH(α, β) =|| f ||∞= maxs∈I |f (s)|Intersections: α(si) = β(si), s0 ≤ s1 ≤ . . . ≤ sn, so

    f (s) = (s − s0) · · · (s − sn) [s0, . . . , sn, s]f︸ ︷︷ ︸divided difference

    With σ = sn − s0 (and Hermite-Genocchi):

    f (s) = 1(n+1)! f

    (n+1)(s0) (s − s0) · · · (s − sn) + O(σn+2)

    Goal: express f (n+1)(s0) in geometric invariants of α:(affine) curvature and its derivatives

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    General strategy

    Spline: offset curve β(s) = α(s) + f (s) N(s), s ∈ I.Distance function f gives HD: δH(α, β) =|| f ||∞= maxs∈I |f (s)|Intersections: α(si) = β(si), s0 ≤ s1 ≤ . . . ≤ sn, so

    f (s) = (s − s0) · · · (s − sn) [s0, . . . , sn, s]f︸ ︷︷ ︸divided difference

    With σ = sn − s0 (and Hermite-Genocchi):

    f (s) = 1(n+1)! f

    (n+1)(s0) (s − s0) · · · (s − sn) + O(σn+2)

    Goal: express f (n+1)(s0) in geometric invariants of α:(affine) curvature and its derivatives

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    1 Approximation by linear splines

    2 Approximation by conic splines

    3 Approximation by biarc and bihelix splines

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation by linear splines

    Given: ε > 0.Question: Optimal size of linear spline approximating smooth curve towithin Hausdorff distance ε?

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Optimal linear spline

    Féjes Toth (1948) For convex C2-curve in R2 the minimal number Nof vertices of an inscribed, ε-approximating polygon is

    N = 12√

    2

    (

    ∫ L

    s=0κ(s)

    12 ds

    )

    ε−1/2 + O(1).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff distance

    L

    α

    α(0)

    α(σ)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff distance

    L

    α

    N(s)

    f(s)

    α(s)α(0)

    α(σ)

    T(s)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff distance

    L

    α

    N(s)

    f(s)

    α(s)α(0)

    α(σ)

    T(s)

    Consider L as offset curve:

    β(s) = α(s) + f (s) N(s)

    Distance function f , with f (0) = f (σ) = 0

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff distance

    L

    α

    N(s)

    f(s)

    α(s)α(0)

    α(σ)

    T(s)

    Consider L as offset curve:

    β(s) = α(s) + f (s) N(s)

    Distance function f , with f (0) = f (σ) = 0

    Hausdorff distance: δH(α, L) = max0≤s≤σ f (s) =: | | f | |∞

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Frenet-Serret frame and curvature

    α : [0, L] → R2: arc-length parametrization

    α(s)

    T(s) = α′(s)

    N(s)

    Frenet-Serret :

    {T ′(s) = κ(s)N(s),

    N ′(s) = −κ(s)T (s).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation lemma

    α : [0, σ] → R2: C2-curveChord L is offset curve

    β(s) = α(s) + f (s) N(s)

    with f (0) = f (σ) = 0.Distance function:

    f (s) = s (s − σ) [0, σ, s] f = 12 s (s − σ) f′′(0) + O(σ3)

    Hence:

    || f ||∞ = 12 max0≤s≤σ |s (s − σ) f′′(0)| + O(σ3)

    = 18 |f′′(0)| σ2 + O(σ3)

    Can show: f ′′(0) = κβ(0) − κα(0)Offset curve is line segment, so κβ(0) = 0

    Hence: δH(α, β) = 18 |κα(0)| σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Complexity of linear spline

    Hausdorff distance: ε

    ε

    l(s)α(s)

    l(s) =

    8εκ(s)

    + O(ε)

    Féjes Toth (1948)

    Nmin =∫L

    s=0

    dsl(s)

    = 12√

    2

    (

    ∫L

    s=0κ(s)

    12 ds

    )

    ε−1/2 + O(1).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Higher dimensions

    R. Schneider (1981)

    For convex C3-hypersurface in Rd the minimal number of vertices ofan inscribed, ε-approximating polytope is

    Nmin(ε) ≈ Cdε(1−d)/2∫

    F

    √K dF ,

    with

    Cd : constant depending only on dimension

    K : Gaussian curvature of F (product of d − 1 main curvatures)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    1 Approximation by linear splines

    2 Approximation by conic splines

    3 Approximation by biarc and bihelix splines

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Introduction

    Given a sufficiently smooth, plane curve α, with non vanishingcurvature and ε > 0.Goal

    Complexity: Find the number of elements of a parbolic or conicspline approximating α.Algorithm: Approximate α with parabolic or conic spline.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Complexity

    Theorem

    Total number of elements of optimal :

    parabolic spline: c1ε−1/4 + O(1)

    c1 = 0.297∫L

    0|k(s)|1/4κ(s)5/12ds

    conic spline: c2ε−1/5 + O(1)

    c2 = 0.186∫ L

    0|k ′(s)|1/5κ(s)2/5ds

    κ(s): (Euclidean) curvature

    k(s): Affine curvature (constant for conics!)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine arc-length & curvature

    γ : I → R2, smooth regular curve, r is its affine arc-lengthparameter if

    [γ̇(r), γ̈(r)] = 1.

    [γ̇(r),...γ(r)] = 0, so

    ...γ(r) + k(r)γ̇(r) = 0.

    k(r): affine curvature at γ(r)

    Affine Frenet-Serret frame:

    γ̇ = t , ṫ = n, ṅ = −k t .

    Curve uniquely determined by affine curvature up to equi-affinetransformations

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine arc-length & curvature

    γ : I → R2, smooth regular curve, r is its affine arc-lengthparameter if

    [γ̇(r), γ̈(r)] = 1.

    [γ̇(r),...γ(r)] = 0, so

    ...γ(r) + k(r)γ̇(r) = 0.

    k(r): affine curvature at γ(r)

    Affine Frenet-Serret frame:

    γ̇ = t , ṫ = n, ṅ = −k t .

    Curve uniquely determined by affine curvature up to equi-affinetransformations

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine arc-length & curvature

    γ : I → R2, smooth regular curve, r is its affine arc-lengthparameter if

    [γ̇(r), γ̈(r)] = 1.

    [γ̇(r),...γ(r)] = 0, so

    ...γ(r) + k(r)γ̇(r) = 0.

    k(r): affine curvature at γ(r)

    Affine Frenet-Serret frame:

    γ̇ = t , ṫ = n, ṅ = −k t .

    Curve uniquely determined by affine curvature up to equi-affinetransformations

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine arc-length & curvature

    γ : I → R2, smooth regular curve, r is its affine arc-lengthparameter if

    [γ̇(r), γ̈(r)] = 1.

    [γ̇(r),...γ(r)] = 0, so

    ...γ(r) + k(r)γ̇(r) = 0.

    k(r): affine curvature at γ(r)

    Affine Frenet-Serret frame:

    γ̇ = t , ṫ = n, ṅ = −k t .

    Curve uniquely determined by affine curvature up to equi-affinetransformations

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine arc-length & curvature

    γ : I → R2, smooth regular curve, r is its affine arc-lengthparameter if

    [γ̇(r), γ̈(r)] = 1.

    [γ̇(r),...γ(r)] = 0, so

    ...γ(r) + k(r)γ̇(r) = 0.

    k(r): affine curvature at γ(r)

    Affine Frenet-Serret frame:

    γ̇ = t , ṫ = n, ṅ = −k t .

    Curve uniquely determined by affine curvature up to equi-affinetransformations

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Constant Affine Curvature

    Conics are curves with constant affine curvature.

    k > 0 ellipsek = 0 parabolak < 0 hyperbola

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Osculating Conics

    Osculating Conic: unique conic with contact order 4 (5-foldintersection, at point of non-zero Euclidean curvature on a planecurve)

    Sextactic Point: point where osculating conic has contact oforder at least 5.

    Affine curvature at a point = affine curvature osculating conic.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine Spirals (1)

    Affine Spiral: curve with monotone affine curvature.

    Any conic intersects an affine spiral in at most 5 points (countedwith multiplicity).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Affine Spirals (2)

    Osculating conics of an affine spiral are disjoint, and do notintersect the spiral arc except at their point of contact.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff Distance to bitangent parabolic arc

    Theorem (part 1)

    Given: α, a smooth spiral of length σHausdorff distance to a bitangent parabolic arc β:

    δH(α, β) =1

    128 |k0|κ5/30 σ

    4 + O(σ5)

    κ0: Euclidean curvature of α (e.g., at endpoint)

    k0: affine curvature of α

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: sketch

    Strategy: consider bitangent parabolic arc as offset curveβ : [0, ρ] → R2, and use kβ ≡ 0.

    α : [0, ρ] → R2, affine arc-length parametrized.Parabolic arc as offset curve: β(u) = α(u) + f (u) N(u)

    δH(α, β) =|| f ||∞= 124 4! |f(4)(0)| ρ4 + O(ρ5)

    Can show: f (4)(0) = 3 κα(0)1/3 (kβ(0) − kα(0))

    Offset curve is parabola, so kβ(0) = 0

    ρ = κα(0)1/3σ + O(σ2)

    δH(α, β) =1

    128κα(0)5/3 |kα(0)| σ4 + O(σ5)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: sketch

    Strategy: consider bitangent parabolic arc as offset curveβ : [0, ρ] → R2, and use kβ ≡ 0.

    α : [0, ρ] → R2, affine arc-length parametrized.Parabolic arc as offset curve: β(u) = α(u) + f (u) N(u)

    δH(α, β) =|| f ||∞= 124 4! |f(4)(0)| ρ4 + O(ρ5)

    Can show: f (4)(0) = 3 κα(0)1/3 (kβ(0) − kα(0))

    Offset curve is parabola, so kβ(0) = 0

    ρ = κα(0)1/3σ + O(σ2)

    δH(α, β) =1

    128κα(0)5/3 |kα(0)| σ4 + O(σ5)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: sketch

    Strategy: consider bitangent parabolic arc as offset curveβ : [0, ρ] → R2, and use kβ ≡ 0.

    α : [0, ρ] → R2, affine arc-length parametrized.Parabolic arc as offset curve: β(u) = α(u) + f (u) N(u)

    δH(α, β) =|| f ||∞= 124 4! |f(4)(0)| ρ4 + O(ρ5)

    Can show: f (4)(0) = 3 κα(0)1/3 (kβ(0) − kα(0))

    Offset curve is parabola, so kβ(0) = 0

    ρ = κα(0)1/3σ + O(σ2)

    δH(α, β) =1

    128κα(0)5/3 |kα(0)| σ4 + O(σ5)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: sketch

    Strategy: consider bitangent parabolic arc as offset curveβ : [0, ρ] → R2, and use kβ ≡ 0.

    α : [0, ρ] → R2, affine arc-length parametrized.Parabolic arc as offset curve: β(u) = α(u) + f (u) N(u)

    δH(α, β) =|| f ||∞= 124 4! |f(4)(0)| ρ4 + O(ρ5)

    Can show: f (4)(0) = 3 κα(0)1/3 (kβ(0) − kα(0))

    Offset curve is parabola, so kβ(0) = 0

    ρ = κα(0)1/3σ + O(σ2)

    δH(α, β) =1

    128κα(0)5/3 |kα(0)| σ4 + O(σ5)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: sketch

    Strategy: consider bitangent parabolic arc as offset curveβ : [0, ρ] → R2, and use kβ ≡ 0.

    α : [0, ρ] → R2, affine arc-length parametrized.Parabolic arc as offset curve: β(u) = α(u) + f (u) N(u)

    δH(α, β) =|| f ||∞= 124 4! |f(4)(0)| ρ4 + O(ρ5)

    Can show: f (4)(0) = 3 κα(0)1/3 (kβ(0) − kα(0))

    Offset curve is parabola, so kβ(0) = 0

    ρ = κα(0)1/3σ + O(σ2)

    δH(α, β) =1

    128κα(0)5/3 |kα(0)| σ4 + O(σ5)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: sketch

    Strategy: consider bitangent parabolic arc as offset curveβ : [0, ρ] → R2, and use kβ ≡ 0.

    α : [0, ρ] → R2, affine arc-length parametrized.Parabolic arc as offset curve: β(u) = α(u) + f (u) N(u)

    δH(α, β) =|| f ||∞= 124 4! |f(4)(0)| ρ4 + O(ρ5)

    Can show: f (4)(0) = 3 κα(0)1/3 (kβ(0) − kα(0))

    Offset curve is parabola, so kβ(0) = 0

    ρ = κα(0)1/3σ + O(σ2)

    δH(α, β) =1

    128κα(0)5/3 |kα(0)| σ4 + O(σ5)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bitangent Conics (1)

    α : [0, σ] → R2, affine spiral arc

    Pencil of conics, tangent at endpoints, and intersecting at onemore point.

    −3 0−2

    2.0

    0.0

    −1

    1.5

    0.5

    1.0

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bitangent Conics (2)

    Bitangent conics, Cu and Cu ′ , u 6= u ′, have no other intersection.

    Cu is tangent to α at endpoints, intersects it at α(u) and at noother point.

    Bezout’s theorem: two conics intersect at 4 points.

    Cu and Cu ′ intersect with multiplicity 2.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bitangent Conics (2)

    Bitangent conics, Cu and Cu ′ , u 6= u ′, have no other intersection.

    Cu is tangent to α at endpoints, intersects it at α(u) and at noother point.

    Bezout’s theorem: two conics intersect at 4 points.

    Cu and Cu ′ intersect with multiplicity 2.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bitangent Conics (2)

    Bitangent conics, Cu and Cu ′ , u 6= u ′, have no other intersection.

    Cu is tangent to α at endpoints, intersects it at α(u) and at noother point.

    Bezout’s theorem: two conics intersect at 4 points.

    Cu and Cu ′ intersect with multiplicity 2.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Equioscillation Property (1)

    0.1

    0.2

    2.0−0.1

    0.4

    3.0

    0.0

    1.0

    t

    2.51.5

    0.3

    −0.2

    α(u) divides α into two parts: α−u and α+u

    C−u and C+u corresponding parts of the conic arc Cu.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Equioscillation Property (1)

    0.1

    0.2

    2.0−0.1

    0.4

    3.0

    0.0

    1.0

    t

    2.51.5

    0.3

    −0.2

    α(u) divides α into two parts: α−u and α+u

    C−u and C+u corresponding parts of the conic arc Cu.

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Equioscillation Property (2)

    −3 0−2

    2.0

    0.0

    −1

    1.5

    0.5

    1.0

    0.5

    0.0

    3.0

    −0.25

    2.01.0

    0.25

    −0.75

    2.51.5

    −0.5

    t

    Cu∗ unique conic, such that du∗ = min0≤u≤σ δH(α, Cu)

    du∗ = δH(α−u∗ , C

    −u∗) = δH(α

    +u∗ , C

    +u∗)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Equioscillation Property (2)

    −3 0−2

    2.0

    0.0

    −1

    1.5

    0.5

    1.0

    0.5

    0.0

    3.0

    −0.25

    2.01.0

    0.25

    −0.75

    2.51.5

    −0.5

    t

    Cu∗ unique conic, such that du∗ = min0≤u≤σ δH(α, Cu)

    du∗ = δH(α−u∗ , C

    −u∗) = δH(α

    +u∗ , C

    +u∗)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff Distance

    Theorem

    Given: α, a smooth spiral of length σ

    β: parabolic arc, asymptotic expansion of the Hausdorff distance:

    δH(α, β) =1

    128 |k0|κ5/30 σ

    4 + O(σ5)

    β: conic arc, asymptotic expansion of the Hausdorff distance:

    δH(α, β) =1

    2000√

    5|k ′0 |κ

    20σ

    5 + O(σ6)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Hausdorff Distance

    Theorem

    Given: α, a smooth spiral of length σ

    β: parabolic arc, asymptotic expansion of the Hausdorff distance:

    δH(α, β) =1

    128 |k0|κ5/30 σ

    4 + O(σ5)

    β: conic arc, asymptotic expansion of the Hausdorff distance:

    δH(α, β) =1

    2000√

    5|k ′0 |κ

    20σ

    5 + O(σ6)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: Brief Sketch

    Strategy: Use equioscillation propery to characterize bitangent conicminimizing Hausdorff distance.

    α : [0, ρ] → R2, affine arc-length parametrized.

    Conic arc: β(u, v) = α(u) + u2 (u − v)(u − ρ)2 D(u, ρ)︸ ︷︷ ︸

    d(u,v,ρ)

    N(u)

    Equioscillation property:

    min0≤v≤ρ max0≤u≤ρ |d(u, v , ρ)| occurs for v = 12ρ,

    and for two values of u, symmetric w.r.to v = 12ρ.

    Rest of proof as for parabolic spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: Brief Sketch

    Strategy: Use equioscillation propery to characterize bitangent conicminimizing Hausdorff distance.

    α : [0, ρ] → R2, affine arc-length parametrized.

    Conic arc: β(u, v) = α(u) + u2 (u − v)(u − ρ)2 D(u, ρ)︸ ︷︷ ︸

    d(u,v,ρ)

    N(u)

    Equioscillation property:

    min0≤v≤ρ max0≤u≤ρ |d(u, v , ρ)| occurs for v = 12ρ,

    and for two values of u, symmetric w.r.to v = 12ρ.

    Rest of proof as for parabolic spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: Brief Sketch

    Strategy: Use equioscillation propery to characterize bitangent conicminimizing Hausdorff distance.

    α : [0, ρ] → R2, affine arc-length parametrized.

    Conic arc: β(u, v) = α(u) + u2 (u − v)(u − ρ)2 D(u, ρ)︸ ︷︷ ︸

    d(u,v,ρ)

    N(u)

    Equioscillation property:

    min0≤v≤ρ max0≤u≤ρ |d(u, v , ρ)| occurs for v = 12ρ,

    and for two values of u, symmetric w.r.to v = 12ρ.

    Rest of proof as for parabolic spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Proof: Brief Sketch

    Strategy: Use equioscillation propery to characterize bitangent conicminimizing Hausdorff distance.

    α : [0, ρ] → R2, affine arc-length parametrized.

    Conic arc: β(u, v) = α(u) + u2 (u − v)(u − ρ)2 D(u, ρ)︸ ︷︷ ︸

    d(u,v,ρ)

    N(u)

    Equioscillation property:

    min0≤v≤ρ max0≤u≤ρ |d(u, v , ρ)| occurs for v = 12ρ,

    and for two values of u, symmetric w.r.to v = 12ρ.

    Rest of proof as for parabolic spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Monotonicity of the Hausdorff Distance

    α : I → R2, affine spiral curve.

    Hausdorff distance between the affine spiral and its optimalbitangent conic arc is monotone.

    −3

    −0.5

    1.5

    0−2

    0.0

    1.0

    0.5

    −1

    Yields bisection algorithm!

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Monotonicity of the Hausdorff Distance

    α : I → R2, affine spiral curve.

    Hausdorff distance between the affine spiral and its optimalbitangent conic arc is monotone.

    −3

    −0.5

    1.5

    0−2

    0.0

    1.0

    0.5

    −1

    Yields bisection algorithm!

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Algorithm (1)

    Spiral Curve: α(t) = (t cos(t), t sin(t)), with π6 ≤ t ≤ 2π.

    ε 10−1 10−2 10−3 10−4 10−5 10−6 10−7 10−8

    Complexity (Exp./Theor.)Parab. 5 9 15 26 46 82 145 257Conic 3 4 6 9 13 21 32 51

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Algorithm (2)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    1 Approximation by linear splines

    2 Approximation by conic splines

    3 Approximation by biarc and bihelix splines

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc

    0.0 0.5 1.0 1.5 2.0

    -1.0

    -0.5

    0.5

    1.0

    Bitangent G1-curve, consisting of two circular arcs

    Tangent continuity at junction point

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc splines

    Biarc: two circular arcs, with tangent continuous junction

    Biarc spline: tangent continuous, elements are biarcs

    Goal:determine complexity of ε-accurate approximating biarc spline

    Related work:Meek-Walton ’94Held, Eibl ’04Drysdale, Rote, Sturm ’08

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc splines

    Biarc: two circular arcs, with tangent continuous junction

    Biarc spline: tangent continuous, elements are biarcs

    Goal:determine complexity of ε-accurate approximating biarc spline

    Related work:Meek-Walton ’94Held, Eibl ’04Drysdale, Rote, Sturm ’08

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc splines

    Biarc: two circular arcs, with tangent continuous junction

    Biarc spline: tangent continuous, elements are biarcs

    Goal:determine complexity of ε-accurate approximating biarc spline

    Related work:Meek-Walton ’94Held, Eibl ’04Drysdale, Rote, Sturm ’08

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc splines

    Biarc: two circular arcs, with tangent continuous junction

    Biarc spline: tangent continuous, elements are biarcs

    Goal:determine complexity of ε-accurate approximating biarc spline

    Related work:Meek-Walton ’94Held, Eibl ’04Drysdale, Rote, Sturm ’08

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarc

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarcs

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Biarcs: junction circle

    -0.5 0.5 1.0

    -1.0

    -0.5

    0.5

    1.0

    Locus of junction points is a circle

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma (1)

    0.2 0.4 0.6 0.8 1.0

    0.002

    0.004

    0.006

    If f : [0, σ] → R is C1, C3 on [0, uσ] and [uσ, σ]1 f (0) = f ′(0) = 0, and f (σ) = f ′(σ) = 02 f ′′′(σ) = f ′′′(0) + O(σ)

    Then| | f | |∞≥ 1324 |f

    ′′′(0)| σ3 + O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma (2)

    0.2 0.4 0.6 0.8 1.0

    -0.02

    -0.01

    0.01

    0.02

    | | f | |∞≥ 1324 |f′′′(0)| σ3 + O(σ4)

    Equality: junction point uσ = 12σ + O(σ2)

    Derivative at junction point: f ′( 12σ) =124 f

    ′′′(0)σ2 + O(σ3)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Application: optimal biarc

    α : [0, σ] → R2: C3-curve

    Bitangent biarc: offset curve β(s) = α(s) + f (s) N(s)

    Hausdorff distance: δH(α, β) ≥| | f | |∞= 1324 |f ′′′(0)| σ3 + O(σ4)Can show: f ′′′(0) = κ ′β(0) − κ

    ′α(0)

    Offset curve is piecewise circular, so κ ′β(0) = 0

    Hence: δH(α, β) ≥ 1324 |κ ′α(0)| σ3 + O(σ4)Equality iff junction point of biarc is midpoint of α – up to O(σ4)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Complexity of optimal biarc

    Hausdorff distance to optimal biarc:

    δH(α, β) =1

    324 |κ′0| σ

    3 + O(σ4)

    Complexity of optimal biarc-spline:

    N ∼1

    3 3√

    12

    (

    ∫L

    s=0|κ ′(s)|1/3 ds

    )

    ε−1/3

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Complexity of optimal biarc

    Hausdorff distance to optimal biarc:

    δH(α, β) =1

    324 |κ′0| σ

    3 + O(σ4)

    Complexity of optimal biarc-spline:

    N ∼1

    3 3√

    12

    (

    ∫L

    s=0|κ ′(s)|1/3 ds

    )

    ε−1/3

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bihelix splines (1)

    Problem: approximation of C3 space-curves (3D)

    Bihelix: two helical arcs, with tangent continuous junction

    Bihelix spline: tangent continuous, elements are bihelices

    Goal:determine complexity of ε-accurate approximating bihelix spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bihelix splines (1)

    Problem: approximation of C3 space-curves (3D)

    Bihelix: two helical arcs, with tangent continuous junction

    Bihelix spline: tangent continuous, elements are bihelices

    Goal:determine complexity of ε-accurate approximating bihelix spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bihelix splines (1)

    Problem: approximation of C3 space-curves (3D)

    Bihelix: two helical arcs, with tangent continuous junction

    Bihelix spline: tangent continuous, elements are bihelices

    Goal:determine complexity of ε-accurate approximating bihelix spline

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bihelix splines (2)

    Bihelical arcs withEndpoints p0 and p1End tangents T0 and T1 (unit vectors)

    Junction points form one-parameter family of cylinders

    (through endpoints of curve segment)

    Direction of cylinder axes: all unit vectors perpendicular toT1 − T0 (one-parameter family)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bihelix splines (2)

    Bihelical arcs withEndpoints p0 and p1End tangents T0 and T1 (unit vectors)

    Junction points form one-parameter family of cylinders

    (through endpoints of curve segment)

    Direction of cylinder axes: all unit vectors perpendicular toT1 − T0 (one-parameter family)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Bihelix splines (2)

    Bihelical arcs withEndpoints p0 and p1End tangents T0 and T1 (unit vectors)

    Junction points form one-parameter family of cylinders

    (through endpoints of curve segment)

    Direction of cylinder axes: all unit vectors perpendicular toT1 − T0 (one-parameter family)

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma

    Curve α : [0, σ] → R3: smooth space curve

    Offset curve β(s) = α(s) + f (s) N(s) + g(s) B(s):

    smooth on [0, uσ] and on [uσ, σ]

    bitangent to α

    κ ′β(0) = 0 and κ′β(σ) = 0 (e.g., if β is bi-helix)

    Hausdorff distance

    δH(α, β) ≥ 1324 |κ ′0| σ3 + O(σ4)Equality iff

    u = 12 + O(σ), and

    α and β have the same Frenet-Serret frame at endpoints(up to O(σ2))

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma

    Curve α : [0, σ] → R3: smooth space curve

    Offset curve β(s) = α(s) + f (s) N(s) + g(s) B(s):

    smooth on [0, uσ] and on [uσ, σ]

    bitangent to α

    κ ′β(0) = 0 and κ′β(σ) = 0 (e.g., if β is bi-helix)

    Hausdorff distance

    δH(α, β) ≥ 1324 |κ ′0| σ3 + O(σ4)Equality iff

    u = 12 + O(σ), and

    α and β have the same Frenet-Serret frame at endpoints(up to O(σ2))

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma

    Curve α : [0, σ] → R3: smooth space curve

    Offset curve β(s) = α(s) + f (s) N(s) + g(s) B(s):

    smooth on [0, uσ] and on [uσ, σ]

    bitangent to α

    κ ′β(0) = 0 and κ′β(σ) = 0 (e.g., if β is bi-helix)

    Hausdorff distance

    δH(α, β) ≥ 1324 |κ ′0| σ3 + O(σ4)Equality iff

    u = 12 + O(σ), and

    α and β have the same Frenet-Serret frame at endpoints(up to O(σ2))

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma

    Curve α : [0, σ] → R3: smooth space curve

    Offset curve β(s) = α(s) + f (s) N(s) + g(s) B(s):

    smooth on [0, uσ] and on [uσ, σ]

    bitangent to α

    κ ′β(0) = 0 and κ′β(σ) = 0 (e.g., if β is bi-helix)

    Hausdorff distance

    δH(α, β) ≥ 1324 |κ ′0| σ3 + O(σ4)Equality iff

    u = 12 + O(σ), and

    α and β have the same Frenet-Serret frame at endpoints(up to O(σ2))

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Approximation Lemma

    Curve α : [0, σ] → R3: smooth space curve

    Offset curve β(s) = α(s) + f (s) N(s) + g(s) B(s):

    smooth on [0, uσ] and on [uσ, σ]

    bitangent to α

    κ ′β(0) = 0 and κ′β(σ) = 0 (e.g., if β is bi-helix)

    Hausdorff distance

    δH(α, β) ≥ 1324 |κ ′0| σ3 + O(σ4)Equality iff

    u = 12 + O(σ), and

    α and β have the same Frenet-Serret frame at endpoints(up to O(σ2))

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Complexity of optimal bihelix splines

    Hausdorff distance to optimal bihelix:

    δH =1

    324 |κ′0| σ

    3 + O(σ4)

    Complexity of optimal bihelix-spline:

    N ∼1

    3 3√

    12

    (

    ∫L

    s=0|κ ′(s)|1/3 ds

    )

    ε−1/3

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Complexity of optimal bihelix splines

    Hausdorff distance to optimal bihelix:

    δH =1

    324 |κ′0| σ

    3 + O(σ4)

    Complexity of optimal bihelix-spline:

    N ∼1

    3 3√

    12

    (

    ∫L

    s=0|κ ′(s)|1/3 ds

    )

    ε−1/3

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Open problems

    Approximation of curves in space with helical arcs (ongoing work)

    Approximation of curves in higher dimensions (ongoing work)

    Good algorithm(s) for optimalpolytopes inscribing convex hypersurfaces (arbitrary dimension)

    cf. Schneider (1981), Gruber (1993)polyhedral surfaces approximating general hypersurfaces

    cf. Clarkson (2006)polyhedral surfaces approximating submanifolds (arbitrarycodimension)

    Open: Approximation of (convex) hypersurfaces with piecewisequadrics (envelope surfaces?).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Open problems

    Approximation of curves in space with helical arcs (ongoing work)

    Approximation of curves in higher dimensions (ongoing work)

    Good algorithm(s) for optimalpolytopes inscribing convex hypersurfaces (arbitrary dimension)

    cf. Schneider (1981), Gruber (1993)polyhedral surfaces approximating general hypersurfaces

    cf. Clarkson (2006)polyhedral surfaces approximating submanifolds (arbitrarycodimension)

    Open: Approximation of (convex) hypersurfaces with piecewisequadrics (envelope surfaces?).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Open problems

    Approximation of curves in space with helical arcs (ongoing work)

    Approximation of curves in higher dimensions (ongoing work)

    Good algorithm(s) for optimalpolytopes inscribing convex hypersurfaces (arbitrary dimension)

    cf. Schneider (1981), Gruber (1993)polyhedral surfaces approximating general hypersurfaces

    cf. Clarkson (2006)polyhedral surfaces approximating submanifolds (arbitrarycodimension)

    Open: Approximation of (convex) hypersurfaces with piecewisequadrics (envelope surfaces?).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

  • Approximation by linear splinesApproximation by conic splines

    Approximation by biarc and bihelix splines

    Open problems

    Approximation of curves in space with helical arcs (ongoing work)

    Approximation of curves in higher dimensions (ongoing work)

    Good algorithm(s) for optimalpolytopes inscribing convex hypersurfaces (arbitrary dimension)

    cf. Schneider (1981), Gruber (1993)polyhedral surfaces approximating general hypersurfaces

    cf. Clarkson (2006)polyhedral surfaces approximating submanifolds (arbitrarycodimension)

    Open: Approximation of (convex) hypersurfaces with piecewisequadrics (envelope surfaces?).

    Gert Vegter Approximation with linear, biarc, conic and bihelix splines

    Approximation by linear splinesApproximation by conic splinesApproximation by biarc and bihelix splines