institute for mathematics and its applications · 2016-05-25 · two-dimensional offsets and medial...

33
TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa Kwon, Hwan Pyo Moon, Kyeong Hah Roh and Nam-Sook Wee IMA Preprint Series # 2128 ( July 2006 ) INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS UNIVERSITY OF MINNESOTA 400 Lind Hall 207 Church Street S.E. Minneapolis, Minnesota 55455–0436 Phone: 612-624-6066 Fax: 612-626-7370 URL: http://www.ima.umn.edu

Upload: others

Post on 21-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM

By

Hyeong In Choi, Sung Woo Choi

Chang Yong Han, Tae-wan Kim

Song-Hwa Kwon, Hwan Pyo Moon, Kyeong Hah Roh

and

Nam-Sook Wee

IMA Preprint Series # 2128

( July 2006 )

INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS

UNIVERSITY OF MINNESOTA

400 Lind Hall207 Church Street S.E.

Minneapolis, Minnesota 55455–0436Phone: 612-624-6066 Fax: 612-626-7370

URL: http://www.ima.umn.edu

Page 2: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

Two-dimensional Offsets and Medial Axis

Transform

Hyeong In Choi∗

Department of Mathematics,Seoul National University, Seoul 151-747, Korea

Sung Woo Choi†

Department of Mathematics,Duksung Women’s University, Seoul 132-714, Korea

Chang Yong Han‡

School of Electronics and Information,Kyung Hee University, Gyeonggi-do 446-701, Korea

Tae-wan Kim§

Department of Naval Architecture and Ocean Engineering,Seoul National University, Seoul 151-744, Korea

Song-Hwa KwonInstitute of Mathematics and its Application,

University of Minnesota, Minneapolis, MN 55455, USA

Hwan Pyo MoonResearch Lab., Amisys Corporation, Seoul 135-080, Korea

Kyeong Hah RohDepartment of Mathematics and Statistics,

Arizona State University, Tempe, AZ 85287, USA

Nam-Sook Wee¶

Division of Industrial and Mechanical Systems Engineering,Hansung University, Seoul 136-792, Korea

1

Page 3: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

Abstract

We present a mathematical theory of the two-dimensional offset curvesfrom the viewpoint of medial axis transform. We explore the local geom-etry of the offset curve in relation with the medial axis transform, culmi-nating in the classification of points on the offset curve. We then studythe domain decomposition from the viewpoint of offsets, and in particularintroduce the concept of monotonic fundamental domain as a device fordetecting the correct topology of offsets as well as for stable numericalcomputation. The monotonic fundamental domains are joined by peaksor valleys of the medial axis transform, or by what we call the critical hori-zonal section whose algebro-geometric properties are rigorously treated aswell.

Keywords: Offset curves, Medial axis transform, Domain decompo-sition, Computer Aided Geometric Design

AMS(MOS) classification: 51N25 (Analytic geometry with other trans-formation groups)

1 Introduction

Mathematically, an offset curve is a curve of fixed distance away from a givencurve. This simple enough definition begets very complicated problems whichcan be crudely classified into of two types: One is the curve representationproblem of the so-called untrimmed offsets, and the other is a more global one,namely, the trimming process of the untrimmed offset curves.

It is easy to see that even if the curve is a polynomial curve, the offset curveneed not be a rational curve (of the original parameter). This irrationality maycause some serious problems in the handling of the offset curves in computeraided geometric design. The first kind, i.e., the representation problem, thusreceived a lot of attention, as far as we know, since Klass [26] had approximatedoffset curves of cubic splines by using another cubic splines. Since then, therehas been a huge amount of work on the approximation of offset curves [7, 8, 9,10, 15, 22, 23, 27, 28, 30, 33, 34, 36, 37, 38, 41, 42, 43].

In addition to these efforts to approximate offset curves with existing splinecurves, other attempts have been made to invent new types of spline curveswhose offsets are easy to handle. Meek and Walton [31] studied the offsets ofcurves consisting of clothoidal splines. In this regard, an important pioneer-ing work has been done by Farouki and Sakkalis [14]. They introduced thePythagorean hodographs, which are special kinds of splines admitting ratio-nal offset curves. This feature makes it easier to manipulate the offset curves.

∗First author holds joint appointment in the Research Institute of Mathematics, SeoulNational University.

†Sung Woo Choi is supported by MOST/KOSEF(Grant #R01-2005-000-10120-0).‡This work was supported by the Brain Korea 21 Project in 2005.§This work was in part supported by grant No. R01-2005-000-11257-0 from Basic Research

Program of Korea Science and Engineering.¶This research was financially supported by Hansung University in the year of 2006.

2

Page 4: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

Later, Pottmann [39, 40] introduced a rational generalization. Namely, he char-acterized the rational curves with rational offsets. Juttler [25] devotes to cu-bic Pythagorean hodograph (PH) curves which enjoy a number of remarkableproperties, such as polynomial arc-length function and existence of associatedrational frames. Moreover, geodesic offsets and general offsets are active re-search areas related to offsets. In [1], general offset curves are treated in thecontext of Minkowski geometry of the two-dimensional plane, stemming fromthe consideration of a strictly convex, centrally symmetric given curve as itsunit circle. An algorithm to offset curves on offset is presented with tessellatedrepresentation for both curves and surfaces by Holla [19].

The second kind, the trimming problem, is of somewhat different nature.This kind of problem occurs due to the presence of a cut or focal loci. Anobvious approach to this type of problem would be to compute the intersectionof the untrimmed offset curves and decide which portion should be removed togenerate the genuine offset curve [21, 42, 31, 30, 16, 3, 32, 24, 20, 29].

A well-known way of getting around this difficulty is to use the medial axis.For domains whose boundary consists of circular arcs and line segments, theVoronoi diagram, which is almost equivalent to the medial axis, has been widelyused for a long time in the NC machining industry [6, 17, 18, 35]. The trouble,however, is that most algorithms for finding the medial axis are restricted tothe domain whose boundary is made up of circular arcs and line segments. Andwhen the boundary of the domain is free-form, finding the medial axis becomesan even more difficult problem, thereby begging the question.

Some studies on medial axis transform for free-form boundary curves havebeen done more carefully by few of the present authors: In [4] and [5], a newmathematical theory and algorithm for approximately finding the medial axistransform are presented. They are based on the so-called Domain Decomposi-tion Lemma, which enables one to decompose a complicated domain into sim-pler, hence easier to handle, subdomains. Chiang et al. [2], have also carriedout some works on this feature.

The purpose of this paper is to present a mathematically rigorous theory onoffsets from the viewpoint of medial axis transform. We first study the relationbetween the medial axis transform and offset curves. In particular, we studythe local geometry of the medial axis transform and then present our solutionof the problem of complete local geometric classification of the points on theoffsets. We then present a new approach to the domain decomposition fromthe viewpoint of offsets, and in particular introduce the concept of monotonicfundamental domain as a device for facilitating the offset computation whilepreserving the correct topological properties of offsets as well as for stable nu-merical computation. The monotonic fundamental domains are joined by peaksor valleys of the medial axis transform, or by what we call the critical horizonalsection. We also present a theoretical algorithmic procedure of determiningwhether a given fundamental domain is a critical horizontal section, which isperhaps the most subtle part of the offset computation.

What we are aiming at in the paper is not finding a numerically stableworkable algorithm that embodies all the local and global geometric information

3

Page 5: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

presented in this paper. Rather, our aim is to provide a theoretical foundationor framework for doing so, and for that purpose various results of theoreticalbent presented in this paper – the domina decomposition lemma for offsets, thelocal geometric classification results, the results on the monotonic fundamentaldomain, and the method of determining the critical horizontal section, and etc.– should prove essential.

2 Local geometry of medial axis transform fromthe viewpoint of offset curves

The offset curve considered throughout our discussion is an inner offset curveof a planar region. We investigate the offset curve by analyzing the medialaxis transform of the region. Regarding to the medial axis transform, we willjust adopt all the concepts, notations, and results from [4]. Also, as in [4], bythe term domain, we mean a noncircular region Ω which is the closure of aconnected bounded open subset in R2 bounded by a finite number of mutuallydisjoint simple closed curves such that each simple closed curve in ∂Ω consistsof a finite number of pieces of real analytic curves. Even though all the theoreticresults in this paper are valid for the region of which boundaries consist of anyreal analytic curves, some algorithms are valid only for rational curves. Thus,we restrict the domains to those regions of which boundaries only consist ofrational curves.

Now, we present here the basic definitions of the offset of a domain and thefundamental relationship between the offset and the medial axis transform.

For a positive number d, we define the d-offset curve Od(Ω) as the inneroffset curve to the boundary ∂Ω at a distance d, i.e., the set

Od(Ω) = p ∈ Ω |dist(p, ∂Ω) = d,where dist(A, B) is the Euclidean distance between two sets A and B. We alsodefine the d-offset region Ωd as the set inside the d-offset curve, i.e.,

Ωd = p ∈ Ω |dist(p, ∂Ω) ≥ d.A set in R2 is called an offset region, if it is a d-offset region of a domain forsome d > 0. Finally, for a subset A of R2 × R+, we denote by R(A) the regionrecovered by the disks of A, i.e., the set

R(A) =⋃

(p,r)∈A

Br(p) = q ∈ R2 | ∃(p, r) ∈ A, s.t. |pq| ≤ r.

Then, it is obvious by the definition of the medial axis transform that

Ω = R(MAT(Ω)),

i.e., the domain is the union of all of its maximally inscribed disks. Recall thatMAT(Ω) denotes the medial axis transform of Ω [4].

4

Page 6: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

To investigate the relationship between the offset and the medial axis trans-form, we need to define d-cutoff Ad of A ⊂ R2 × R+ for d ≥ 0 as

Ad = (p, r) ∈ R2 × R+ | (p, r + d) ∈ A.

That is, to get Ad, we first pull A down in the negative z-axis by d, then removewhat is below the xy-plane. Then, the remainder is Ad. Then, it is obvious tosee that MAT(Ω)d = MAT(Ωd). From this observation, we can get

Od(Ω) = ∂Ωd

= ∂R(MAT(Ωd))= ∂R(MAT(Ω)d).

That is, the d-offset curve is the boundary (or envelope) of the region saturatedby the disks corresponding to the d-cutoff of the medial axis transform of theoriginal domain.

The various geometric aspects of the medial axis transform is revealed in [4].Especially, we could characterize the medial axis transform as a geometric graph:A geometric graph is a usual topological graph with a finite number of verticesand edges, where a vertex is a point in R3 and an edge is a real analytic curvewith finite length and with limits of tangents at the end points.

As a continuing investigation of the geometry of the medial axis transform,here we explore some local geometric property of the cross sections of the me-dial axis transform cut by horizontal planes. To classify all the possible con-figurations of the offset curve around its self-intersection points, it is crucial tounderstand the geometric nature of the cross section, since the self-intersectionpoints of the d-offset curve fall on the cross section by the horizontal plane withheight d. Before we start, let us fix some terminologies that will be used in thesubsequent discussion.

For c ≥ 0, we call a connected component of the set

(p, r) ∈ MAT(Ω) | r = c

a c-horizontal section of MAT(Ω). Since MAT(Ω) is a finite geometric graphembedded in R3 as mentioned earlier, it is easy to see that there is a finitenumber of c-horizontal sections of MAT(Ω) for given c ≥ 0, and each horizontalsection is either a point or a graph (i.e., a finite geometric graph which is a subsetof MAT(Ω)).

Lemma 1. Let Ω be a domain and let c > 0. Let H be a c-horizontal sectionof MAT(Ω). Then H is either a point or a C1 curve segment (possibly a closedcurve). Moreover, if H is a curve segment (or a closed curve), every point inH, with possible exception at the end points, is a 2-prong point of MAT(Ω).

Proof. Suppose H is not a point. Suppose (p, r) ∈ H is an n-prong point ofMAT(Ω), but not an end point of H. Let T (p) be the union of the line segmentsjoining p and the contact points of Br(p). Then, Br(p) \T (p) has n connected

5

Page 7: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

components. We denote them by U1, . . . , Un. In [4], it is proved that the medialaxis emanating from p consists, near p, of exactly n curves s1, . . . , sn. We mayassume each si is contained in Ui for i = 1, . . . , n. We define θi > 0 to be theangle of Ui at p for i = 1, . . . , n. Let ri be the segment of the medial axistransform emanating from (p, r) corresponding to si. Let φi be the angle at(p, r) between ri and the xy-plane. The sign of φi is chosen to be positive if ri

lies above the plane R2 × r near (p, r). Then, as shown in [4], we have

tanφi = − cosθi

2, (1)

for i = 1, . . . , n. Note that n ≥ 2 and at least two of φi’s, say φ1 and φ2, arenon-negative, since (p, r) is not an end point of H. If φ1 > 0, then θ1 > π, whichimplies θ2 < π. This in turn implies φ2 < 0. Thus, we should have φ1 = φ2 = 0.But then θ1 = θ2 = π by Equation (1), so n must be 2 from the fact that∑n

i=1 θi ≤ 2π, and θi > 0 for 1 ≤ i ≤ n. So the two contact components of(p, r) must be isolated contact points. For the C1 connectivity near (p, r), onemay refer to Section 8.2 in [4].

Definition 1 (Peak, valley, and slope). Let Ω be a domain and H is ac-horizontal section of MAT(Ω) for c ≥ 0. H is called a peak, if it is locallymaximal in r, i.e., there exists a neighborhood N of H in R2 × R+ such thatr ≤ c for any (p, r) in N ∩ MAT(Ω). Similarly, H is called a valley, if it islocally minimal in r. Finally if H is neither a peak nor a valley, it is called aslope.

Remark 1. Note that the results in [4] easily implies that the number of peaksand valleys of MAT(Ω) is finite.

Remark 2. Note that a c-horizontal section can be a peak and a valley at thesame time. This is the case when, for example, Ω is a stadium defined by

Ω = (x, y) ∈ R2 | − a ≤ y ≤ a,−√

a2 − y2 − a ≤ x ≤√

a2 − y2 + a,

and c = a, the half of the stadium’s width.

Theorem 2 (Shape of valley). Let Ω be a domain. Suppose V is a valley ofMAT(Ω) and not a 0-horizontal section of MAT(Ω). Then V has the followingproperties:

(1) V is either a point or a C1 (possibly closed) curve segment. If V is a(closed) curve segment, each point on V , which is not an end point of V ,is a 2-prong point of MAT(Ω).

(2) None of the points in V (including the possible end points) is a bifurcationpoint of MAT(Ω).

(3) Suppose V is a curve segment. If an end point (p, r) of V is a 2-prongpoint of MAT(Ω), then MAT(Ω) is a C1 curve near (p, r).

6

Page 8: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

(4) If V is a connected component of MAT(Ω), then it is either a closedcurve or a curve segment both of whose end points are 1-prong points ofMAT(Ω).

Proof. The first property is just Lemma 1. Let (p, r) be a point in V . We willshow that (p, r) cannot be a bifurcation point of MAT(Ω). We can assumethat V is a curve segment and (p, r) is an end point of V . Suppose (p, r) isan n-prong point of MAT(Ω) with n ≥ 1. For 1 ≤ i ≤ n, let ri, θi, and φi begiven as in the proof of Lemma 1. Note that φi ≥ 0 for each i, since V is avalley. Thus by Equation (1) and the fact that

∑ni=1 θi ≤ 2π, we have n ≤ 2.

The third property immediately follows from the similar argument to the latterpart of the proof of Lemma 1.

Now assume V is a connected component of MAT(Ω). Note that if Vis a closed curve, then it is a connected component of MAT(Ω). SupposeV is not a closed curve. Then by the second property, each of the two endpoints of V is either a 1-prong point or a 2-prong point of MAT(Ω). But ifone of the end points of V is a 2-prong point of MAT(Ω), then V is not acomponent of MAT(Ω). So both of the two end points of V are 1-prong pointsof MAT(Ω).

Lemma 3. Let Ω be a domain and let r : [0, 1] → MAT(Ω), r(t) = (p(t), r(t))be a continuous path with no self-intersections. (Here we allow the possibilitythat r(0) = r(1).) Suppose there exist a and b (0 < a ≤ b < 1) such that thefunction r(t) takes a local minimum on [a, b]. That is, r is constant on [a, b] andthere exists a neighborhood N of [a, b] in [0, 1] such that r(t) < r(τ) for everyt ∈ [a, b] and τ ∈ N \ [a, b]. Then r([a, b]) is a valley of MAT(Ω).

Proof. We may assume r([a, b]) > 0.The assumption says that r([a, b]) is a localminimum in the “path” r([0, 1]). It remains to show that r([a, b]) is also a localminimum in the “whole” MAT(Ω). To show this property, it remains to provethat there is no bifurcation point on r([a, b]). Let (p, r) be any n-prong pointof MAT(Ω) on r([a, b]). For 1 ≤ i ≤ n, let ri : [0, ε] → MAT(Ω) and θi, φi begiven as in the proof of Lemma 1. By the assumption, there are at least twoφi’s, say φ1 and φ2, greater than 0. By the similar argument to the proof ofLemma 1, (p, r) is a 2-prong point.

Theorem 4 (Existence of valley between two peaks). Let Ω be a domainand P1 and P2 be two (not necessarily distinct) peaks of MAT(Ω). Suppose thatr : [0, 1] → MAT(Ω), r(t) = (p(t), r(t)) is a continuous, not self-intersectingpath (possibly closed if P1 = P2) in MAT(Ω) with the following properties:

(1) The path r connects P1 and P2, i.e., we have r(0) ∈ P1 and r(1) ∈ P2.

(2) There exists a t0 ∈ [0, 1] such that r(t0) /∈ P1 ∪ P2.

Then, there is a valley of MAT(Ω) on the path r.

7

Page 9: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

Proof. In view of Lemma 3, it is sufficient to show that there exist a and b(0 < a ≤ b < 1) such that r(t) takes a local minimum on [a, b] in the senseof the lemma. Suppose not. Then r(t) must be either non-decreasing or non-increasing. Note that r(t) is not constant since there exists a point on r whichis not in P1∪P2. But if r(t) is non-decreasing (respectively, non-increasing), P1

(respectively, P2) cannot be a peak.

3 Classification of points on offset curves

Now we are ready to investigate the local geometry of the offset curves of adomain. For a real analytic curve “segment”, the geometric and topologicalfeatures of its offset curve are already familiar in the CAGD context. When theoffset distance d is relatively small, its offset curve is very similar to the originalone. As d increases, however, the offset curve exhibits irregular points such ascusps, infinite curvature points, or self-intersections. For more information onthe irregularity of offset curves, one is referred to [11, 12].

The domain of our concern is bounded by many rational curve segments.Therefore, the offset curve of the domain is a subset of the union of the offsetcurve segments to the boundary curve segments. In addition to the irregularityof the offset curve segments, caused by the corresponding boundary segmentsby itself, now the offset curve segments can intersect themselves (depending onthe global geometry of the domain) to introduce another kind of irregularity.

Observing that the irregular points always occur on the medial axis of thedomain, we will separately treat points of the offset curve that are on the medialaxis and off the medial axis after a brief review of the offset of a curve segment.

3.1 Untrimmed offset curves

Definition 2. By the untrimmed d-offset curve to a boundary curve segmentr(t) for d > 0, we mean the curve

rd(t) = r(t) + dn(t),

where n(t) is the unit normal vector of r(t) pointing inside the domain. Dueto the orientation convention of the boundary, the normal vector n(t) can beobtained by rotating the vector r′(t)/|r′(t)| counterclockwise by π/2.

The unit tangent vector τd(t) and curvature κd(t) of the untrimmed offsetcurve rd(t) can be readily computed [12] by

τd(t) =1− dκ(t)|1− dκ(t)| τ (t) (2)

κd(t) =κ(t)

|1− dκ(t)| (3)

where τ (t) is the unit tangent vector and κ(t) is the curvature of r(t). Notethat rd(t) exhibits singularities in its tangent vector (abrupt change of its direc-tion) and curvature (infinite curvature) where κ(t) = 1/d, i.e., at the center of

8

Page 10: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

curvature of r(t). For more analytic properties of the untrimmed offset curve,one is referred to [12].

3.2 Points of offset curve off medial axis

We first consider points of the offset curve which is not on the medial axis.

Theorem 5. Let p be a point on Od(Ω). If p is not on MA(Ω), the followingare true:

(1) There is a unique foot point q of p on ∂Ω.

(2) Let r(t) be a parameterization of ∂Ω near q with r(0) = q. There exists anε > 0 such that the untrimmed offset curve rd(t) for t ∈ (−ε, ε) is Od(Ω)near p.

(3) p is not a singular point of rd(t).

Proof. If there is more than one foot point of p on ∂Ω, we should have p ∈MA(Ω). Now we prove the second claim. Let Br(x) be the maximal disk ofΩ tangent to ∂Ω at q. Clearly, we have r > d. Since the mapping from theboundary to the medial axis transform (the medial axis transform map in [4])is continuous, there exists an ε > 0 such that the corresponding maximal diskcontacting at r(t) has a larger radius value than d for t ∈ (−ε, ε). We showthat the untrimmed offset curve rd(t) for t ∈ (−ε, ε) is the d-offset curve of Ωnear p. It suffices to show that for any point rd(t), we have dist(rd(t), ∂Ω) = d.Draw disks Bd(rd(t)) and Br′(p′), where Br′(p′) is the maximal disk at r(t).By our choice of ε, we have r′ > d. Since the two disks Bd(rd(t)) and Br′(p′)are tangent to each other at r(t), we have Bd(rd(t)) ⊂ Br′(p′). Hence there isno other point of ∂Ω which is closer to rd(t) than r(t).

To prove the last claim, it suffices to show κ(0) < 1/d, where κ(t) is thecurvature of r(t). Since we have r ≤ 1/κ(0) (the radius of the contact diskcannot be larger than the radius of curvature), we have d < r ≤ 1/κ(0).

In summary, around the point which is off the medial axis, the offset curve ofthe domain is essentially the untrimmed offset curve for some boundary curvesegments of the domain, and the tangent vector and the curvature are welldefined by Equation (2) and (3).

3.3 Points of offset curve on medial axis

Now we study points of the offset curve which are on the medial axis. Let pbe a point on Od(Ω) and MA(Ω). Note that p is basically a self-intersectionpoint of the offset curve. Let H be the d-horizontal section of MAT(Ω) having(p, d). By Lemma 1, H is either a single point or a C1 curve segment. We firstconsider the case in which H is a single point.

9

Page 11: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

prong valley peak slope1 yes yes no2 yes yes yes

n(≥ 3) no yes yes

Table 1: Single-point horizontal section

Single point horizontal section

Let p be a point on Od(Ω). Suppose, the single point (p, d) is a d-horizontalsection of MAT(Ω). We list the possible status of (p, d) as a medial axistransform point in Table 1. Here, there is no 1-prong slope by definition and 3-prong valley is also impossible by Theorem 2. Other possible cases are depictedin Figure 1.

Case 1 (1-prong valley). The contact disk Bd(p) corresponding to (p, d) isan inscribed osculating disk. The (only one) contact component C of Bd(p)is either a point or an arc, but cannot be the whole circle. Let C(t) be aparameterization of C for t ∈ [0, φ], where φ is the angle over which the arc Cextends. (See Figure 2.) Since (p, d) is a valley, we have 0 ≤ φ ≤ π. The caseφ = 0 occurs when C is a point. Let a and b be the boundary curve segments ofΩ connected by C. (See Figure 2.) Assume that a and b are parameterized in theintervals (−ε, 0] and [0, ε), respectively, such that a(0) = C(0) and b(0) = C(φ).

Theorem 6. The d-offset curve of Ω near p is the union of the untrimmedoffset curves ad and bd.

Proof. Since (p, d) is a valley point and the mapping from the boundary to themedial axis transform is continuous, we can assume that the contact disk at a(t)or b(t) has radius greater than d for t 6= 0. Now the proof can be the same asthat for Theorem 5.

Remark 3. Note that ad or bd has infinite curvature at p if the curvature ofa(t) or b(t) is 1/d at t = 0. Hence, if φ = 0, at least one of ad and bd must havean infinite curvature at p while having a continuous tangent direction. And ifφ = π, one can easily show that none of ad and bd can have infinite curvatureat p.

In summary, the d-offset curve near p can be decomposed into two curvesegments at p. The interior angle of the offset curve at p is π − φ. If φ = 0,in particular, the offset curve has a continuous tangent direction but infinitecurvature at p.

Case 2 (1-prong peak). Since (p, d) is a peak point, we can assume that anycontact disk near p (except Bd(p) itself) has a smaller radius value than d. Thismeans that any point near p (except p itself) cannot have d distance to ∂Ω.Hence d-offset curve near p is just p itself.

10

Page 12: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

1-prong valley 1-prong peak

2-prong peak2-prong valley 2-prong slope

3-prong slope3-prong peak

p p

p p p

p p

d d

d dd

dd

C1 C2

medial axisoffset curve

Figure 1: Typical figures near single-point horizontal sections

p pd

df

C

f

CC

pd

f = p f = 00 < f < p

ad bd bdbd

adad

aa

ab

b

b

Figure 2: Typical figures near 1-prong valleys

11

Page 13: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

pH = ad = bd

a

b

Figure 3: Near a curve segment horizontal section

Case 3 (2-prong valley). If we decompose Ω at Bd(p) into Ω1 and Ω2, then(p, d) is a single 1-prong valley point for each Ωi. Now we can apply Theorem 8.Since the contact components C1 and C2 are isolated points, Od(Ω) is the unionof Od(Ω1) ∩ A′1 and Od(Ω2) ∩ A′2. Note that we have examined each O(Ωi)in Case 1 with φ = π. Hence, the d-offset curve near p is composed of fouruntrimmed offset curve segments emanating at p with the same tangent line.None of them have infinite curvature at p. See Figure 1.

Case 4 (2-prong peak). Applying Theorem 8 and Case 2, we can see thatthe d-offset curve near p is just p itself.

Case 5 (2-prong slope). Decompose Ω at Bd(p) into Ω1 and Ω2 such that(p, d) is a valley for MAT(Ω1) and a peak for MAT(Ω2). By Cases 1 and 2,we can see that Od(Ω) near p is just the same as Od(Ω1) near p, which we havedescribed in Case 1 with φ 6= 0.

Case 6 (n-prong peak (n ≥ 3)). Applying Theorem 8 and Case 2, we cansee that the d-offset curve near p is just p itself.

Case 7 (n-prong slope (n ≥ 3)). Decompose Ω at Bd(p) into Ω1, . . . , Ωn

where (p, d) is a valley for only one of the medial axis transforms, say MAT(Ω1)and a peak for MAT(Ω2), . . . ,MAT(Ωn). By Cases 1 and 2, we can see thatOd(Ω) near p is just the same as Od(Ω1) near p, which we have described inCase 1 with φ 6= 0.

Curve segment horizontal section

Now we consider the case in which H is a C1 curve segment. First, suppose(p, d) is not an end point of H. Since H is a d-horizontal section, for every point(q, d) of H, we have dist(q, ∂Ω) = d, i.e., the whole H is a d-offset curve of Ω.Since every point of H except the end points is a 2-prong point, there are twocorresponding boundary segments near (p, d). (See Figure 3.) And H and thecorresponding two boundary curve segments are d-offset curves to each other.In summary, the d-offset curves of Ω near p is a C1 untrimmed offset curve tothe corresponding boundary curve segments.

12

Page 14: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

prong “valley” “peak” “slope”1 - - -2 yes yes -

n(≥ 3) no yes -

Table 2: At the end point of horizontal section

Case 8 (Curve segment horizontal section). If (p, d) is in the C1 curvesegment d-horizontal section H, but it is not an end point of H, then the d-offset curves of Ω near p is a C1 untrimmed offset curve to the correspondingboundary curve segments.

Now it remains to investigate whether the case p is an end point of H. Wecan classify this case as in Table 1. Here, we temporarily modify the definitionsof the peak, valley, and slope. Note that they were defined for the whole hori-zontal section. We will call a single point (p, r) a “peak” of MAT(Ω), if thereis a neighborhood N of (p, r) such that r is a locally maximal radius value inN∩MAT(Ω). A “valley” and “slope” are similarly modified for the single pointcase.

We list the possible status of (p, d), which is an end point of the C1 curvesegment horizontal section H, in Table 2. Note that the concept “slope” isirrelevant here since the radius value of MAT(Ω) is constant in the direction ofH near (p, d). And for the 1-prong case, there is no need to artificially divideit into a “valley” and “peak”. Typical examples of Table 2 are depicted inFigure 4.

Case 9 (1-prong end point). This case is just Case 8 except that there isonly one d-offset curve segment emanating from p. That is, the d-offset curve ofΩ near p is a C1 untrimmed offset curve to the corresponding boundary curvesegments emanating from p.

Case 10 (2-prong “valley” end point). By dividing the domain at Bd(p),we have two subdomains Ω1 and Ω2 such that p is a 1-prong valley point ofMAT(Ω1) with φ = π (Case 1) and a 1-prong end point of MAT(Ω2) asin Case 9. Hence, the d-offset curve of the domain near p consists of threeuntrimmed offset curve segments emanating at p with the same tangent lineand none of them have infinite curvature at p. See Figure 4.

Case 11 (2-prong “peak” end point). Decompose Ω at Bd(p) into Ω1

and Ω2 such that MAT(Ω1) = H. Since (p, d) is a peak for Ω2, there is nocontribution to the d-offset curve from the subdomain Ω2 except the point pitself. Hence the d-offset curve near p is the same as in Case 9.

Case 12 (n-prong “peak” end point (n ≥ 3)). Decompose Ω at Bd(p)into Ω1, . . . , Ωn such that MAT(Ω1) = H. Now (p, d) is a peak for all otherΩ2, . . . , Ωn. As we have seen in Case 1, there is no contribution to the d-offset

13

Page 15: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

1-prong end point

2-prong "peak" end point 3-prong "peak" end point

2-prong "valley" end point

p

H = ad = bd

a

b

C

p

H

p

H

p

H

Figure 4: Typical figures near end points of C1 curve horizontal sections

curve from the subdomains Ω2, . . . , Ωn except the point p itself. Hence thed-offset curve near p is the same as in Case 9.

Now that we have exhausted all the possible cases of the offset curve pointsof a domain, we can summarize the classification in the following theorem. Forthe convenience of the enumeration, we introduce the following term.

Definition 3. A point p of Od(Ω) is an n-fork point if there are n pieces ofcurve segments of Od(Ω) emanating from p.

Remark 4. We use the term “fork” to distinguish it from the term “prong” usedin the description of the medial axis transform in [4, 5].

Theorem 7 (Classification of points on offset curves). Let p be a pointof the d-offset curve of a domain with d > 0. Then p is one of the followingtypes; (See Figure 7.)

(0) a 0-fork point, i.e., an isolated point;

(1) a 1-fork point, where a C1 curve segment is emanating with finite curva-ture;

(2) a 2-fork point,

(a) where two C1 curve segments are emanating with finite curvature andin opposite tangent directions;

14

Page 16: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

(0)

(1)

(2a)

(4)

(3)

(2b)

(2c)

(2d)

Figure 5: A domain and the offset curve

(b) where two C1 curve segments are emanating with opposite tangentdirections and at least one of them having an infinite curvature;

(c) where two C1 curve segments are emanating with an interior angle0 < φ < π and each of them may or may not have an infinite curva-ture;

(d) where two C1 curve segments are emanating with the same tangentdirection and finite curvature;

(3) a 3-fork point where three C1 curve segments are emanating with finitecurvature such that two of them have the same tangent direction but thethird has the opposite tangent direction;

(4) a 4-fork point where four C1 curve segments are emanating with finitecurvature such that two of them have a common tangent direction and theother two have also a common tangent direction but opposite to the firstone.

Remark 5. Near a 2-fork point with discontinuous tangent direction, the d-offsetregion is on one side of d-offset curve such that the interior angle at that pointis less than π, i.e., there is no “dull” corner point on the boundary of d-offsetregion.

Remark 6. One can show that the number of fork points except (2a) is finite.

15

Page 17: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

For one curve segment, much literature exists on the geometric and topo-logical features of its offset curve. However, for many pieces of curve segmentsbounding a planar region, the interference of the offset curve segments witheach other makes the analysis much more cumbersome. Using the medial axistransform, which holds the complete data of the region, we were able to rigor-ously give a full description of the offset curve of the region, albeit people inthe CAGD community are well aware by experience. In a subsequent section,we will present an approach to compute the offset curve using the medial axistransform.

4 Domain decomposition for offsets

One of the weak points of the medial axis transform is that it is very sensitive tothe perturbation of the domain’s boundary. A small wrinkle of a smooth segmentof the boundary will produce many branches of the medial axis transform comingout toward the wrinkled portion of the boundary. However, the dependence ofthe medial axis transform on the domain’s boundary is in substance local. Thatis, the wrinkled boundary affects only the contact disks that do contact theboundary. In addition to this localized property, on the other hand, the globalinformation about the medial axis transform can be obtained by combining localinformation about the medial axis transform (Domain Decomposition Lemma[4]).

The domain decomposition method was the basic tool for the construction ofthe medial axis transform in [5]. Now, we have at hand the relation between themedial axis transform and the offset curve. It is advantageous if we know how thedomain decomposition method can be applied to the offset curve construction.

Theorem 8 (Domain decomposition lemma for offset). Let (p, r) be ann-prong point of MAT(Ω) and let C1, . . . , Cn be the corresponding contact com-ponents. Let Br(p) be the corresponding contact disk. Suppose A1, . . . , Am arethe connected components of Ω \ Br(p). Let Si = ∂Br(p) ∩ Ai, a segment of∂Br(p). Let Ui be the union of the closed sectors of Br(p) corresponding to Si.That is, Ui = z ∈ pq |q ∈ Si. Denote Ωi = Ai ∪ Br(p) and A′i = Ai ∪ Ui

for i = 1, . . . , m. Then, the d-offset curve Od(Ω) can be decomposed into thefollowing components;

(1) Od(Ωi) ∩A′i for i = 1, . . . ,m,

(2) d-offset curves to the arcs Cj, for j = 1, . . . , n.

Furthermore, each pair of the above components can, at best, share their endpoints. See Figure 6.

Proof. Let Tj be the sector of ∂Br(p) corresponding to the contact componentCj , i.e., Tj = z ∈ pq |q ∈ Cj. It is easy to see that Od(Ω)∩ Tj is the d-offsetcurve to the arc Cj , which is just the same arc as Cj with the same center butr − d radius. (If d > r, no such arc exists.)

16

Page 18: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

C2

C1

T1

T2

A'2

A'1

A'3A'4

Figure 6: The partition of the offset curve

Since the union of all A′i and Tj is the whole domain Ω, we have

Od(Ω) =m⋃

i=1

(Od(Ω) ∩A′i) ∪n⋃

j=1

(Od(Ω) ∩ Tj) .

Now let us show that Od(Ωi) ∩ A′i = Od(Ω) ∩ A′i for each i. It suffices to showthat dist(z, ∂Ωi) = dist(z, ∂Ω) for any z ∈ A′i.

Denote dist(z, ∂Ωi) by d. Let w be a foot point of z on ∂Ωi. We first showthat w is on ∂Ω and thus we have dist(z, ∂Ωi) ≥ dist(z, ∂Ω). Suppose w is noton ∂Ω but on Si. Since z is inside A′i (including the boundary) but w is outsideA′i, zw intersects the boundary of A′i, which is (∂Ai ∩ ∂Ω) ∪ pq1 ∪ pq2, whereq1 and q2 are the end points of Si. By the assumption, zw must intersect pq1

or pq2. (Otherwise, the intersection point on ∂Ai ∩ ∂Ω realizes dist(z, ∂Ωi)with a smaller value than d.) Then it is easy to see that there are points on Si

realizing dist(z, ∂Ωi) with a smaller value than d.Now we show that dist(z, ∂Ωi) ≤ dist(z, ∂Ω). Let v be a foot point of z on ∂Ω

realizing dist(z, ∂Ω). If v is on ∂Ωi, we have dist(z, ∂Ωi) ≤ |zv| = dist(z, ∂Ω).If v is not on ∂Ωi, then zv must intersect ∂Ωi. Let y be the intersection point.Then we have dist(z, ∂Ωi) ≤ |zy| ≤ |zv| = dist(z, ∂Ω).

Therefore, we proved Od(Ωi) ∩ A′i = Od(Ω) ∩ A′i. Finally, note that anypair of distinct A′i and A′k or A′i and Tj can at best share their boundary linesegments.

Although the medial axis transform does not allow in general any closed-form expression via the parameterization of the boundary, one can find thecontact disk corresponding to any boundary points. In [5] and [13], algorithmsto pinpoint the medial axis transform point (p, r) corresponding to a givenboundary point q are presented. In [5], one draws a suspect disk contactingthe boundary curve at q and intersecting the other boundary curve, and thenreduces this disk until it is tangent to the other boundary curve. On the other

17

Page 19: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

p

Figure 7: A subdomain around p

hand, the second algorithm [13], called curve/curve-bisector, is based on theobservation that p is the intersection point of the normal line of the boundarycurve at q and the point/curve bisector of q and the other boundary curve.These algorithms are the ’workhorse’ of our algorithm and we will call them, ina general term, the medial axis transform engines.

The medial axis transform can be approximated by interpolating the pointsfound by the medial axis transform engines. The very property of the medialaxis transform that makes this process possible is that the medial axis transformis a finite geometric graph.

If we have an approximation of the medial axis transform, we can find theshape of a domain since the medial axis transform is a strong deformation re-tract of the domain. To get a more accurate approximation of the medial axistransform, we must find more contact disks using the medial axis transformengines, and include them in the interpolation scheme. Now, when we run themedial axis transform engines to find those additional contact disks, we do nothave to consider the whole domain. We only need to consider the region aroundsuch contact disks. For example, if we want to find a medial axis point p in Fig-ure 7, we can concentrate on the shaded region only, not the whole domain; thisis the idea of the domain decomposition. Thus, each contact disk decomposesthe domain into subdomains. Especially, if we find all the bifurcation points(where at least three edges meet) of the medial axis transform, then the orig-inal domains are decomposed into subdomains whose medial axis transformsare piecewise real analytic curves. We call such a subdomain a fundamentaldomain, and Domain Decomposition Lemma [4] says that it is sufficient todeal with fundamental domains only. (For the ease of computation, we can as-sume that the boundaries of the fundamental domains are rational rather thanpiecewise-rational after placing a disk at every juncture in the boundary curve.)

The idea of domain decomposition is also the cornerstone of our approachto offset. We have seen in Theorem 8 that once the offset curves of the originalboundary curve segments in fundamental domains are constructed, then domaindecomposition links them into the whole offset curve of the domain. In Figure 8,for example, the offset curve of each subdomain does not interfere with the offsetcurves of other subdomains, but can be easily linked with each other, formingthe offset curve of the whole domain.

18

Page 20: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

Figure 8: Domain decomposition for offset curves

In addition, the self-intersection points of the d-offset curve lie on the medialaxis where its radius is d. As we have seen in Lemma 1, the set of all medialaxis transform points whose radius component is c, for a given c > 0, arecomposed of a finite number of points or piecewise C1 curves. The variousgeometries of a c-horizontal section and the offset curve near self-intersectionpoints are thoroughly discussed in the preceding sections. Hence, d-horizontalsection must be located to capture the exact nature of a d-offset curve.

However, given a fundamental domain ΩF and d > 0, locating such d-horizontal section in ΩF is difficult. If we assume that MAT(ΩF ) is representedby a piecewise real analytic curve (p(t), r(t)), the problem is equivalent to solv-ing the equation r(t) = d. But we do not have any closed form expression forthe function r(t). What we have is some engines that compute the value ofp(t) and r(t) for given t. To incorporate such engines into a stable root-findingschemes, one must carefully examine the problem space beforehand.

Thus, to prepare, we are going to further decompose the domain such thatthe medial axis transform of each subdomain has a monotone increasing/decreasingradius component. Once this decomposition is done, the solution of the equa-tion r(t) = d can be efficiently and stably obtained by any traditional numericalmethods, such as Newton-Raphson method. Thus, a special c-horizontal sec-tion, which has a local maximum or minimum radius value, called peak or valley,respectively, needed to be located in advance. To do so, we use iterative pro-cedure to approximately locate peaks and valleys. If we know, in advance, thatthere are no other points nearby which have extreme value in radius, theseiterative algorithms work well. The problem occurs when there are other, some-times infinite, points nearby which have extreme value in radius. These must beroughly counted by looking at the boundary geometry. In particular, it is ad-vantageous to decompose the domain such that each curvature of the boundarycurve segments of its subdomains does not change sign.

In doing so, one can also encounter the situation where there are infinitelymany points which have extreme value in radius. Since the medial axis transformour domain is real analytic curve, infinitely many such points occur only whenthe fundamental domain is parallel ; this is, the two boundary curve segmentsare offset to each other. Using Bezout’s theorem, we will provide an algorithmto determine whether a given domain is parallel.

19

Page 21: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

In Section 5, we will describe the decomposition of the domain into subdo-mains, whose medial axis transform has a monotone radius components. Thenin Section 6 we can easily compute the points satisfying the equation r(t) = d.

5 Critical horizontal section

We now discuss how to locate horizontal sections with a critical radius value.Such horizontal sections will be shortly called critical horizontal sections. Peaksand valleys are kinds of critical horizontal sections.

We begin with fixing some conventions on the boundary which will be usedthroughout this discussion. We assume that every curve segment r(t) composingthe boundary is positively-oriented. That is, the parameter t is so chosen thatif one is going along the curve in the direction of increasing t, then the domainremains to the left.

Let ΩF be a fundamental domain at hand and r and s be its two boundarycurves of the domain defined on the interval [0, 1]. Let p(t) be the correspondingmedial axis point of r(t), and let s(u) be the foot point of p(t) on s. Theopening angle θ(t) of p(t) (or r(t)) is the angle from

−−−−−→p(t)r(t) to

−−−−−→p(t)s(u) in

the counterclockwise direction. If p(t) is on a critical horizontal section, thenθ(t) = π since we know that

cosθ(t)2

= − tan φ(t) (4)

where φ(t) is the angle between the tangent vectors (p′(t), r′(t)) and p′(t).Thus locating critical horizontal sections is equivalent to locating π-openingangle sections.

We have found that it is advantageous to further decompose the fundamentaldomain such that the curvature of its boundary curves have constant sign. Todo that, we need to locate the boundary parameter where the curvature changesits sign. Candidates are those parameters where the curvature is discontinuousor zero.

The curvature κ(t) of a boundary curve r(t) is defined by

κ(t) =det(r′(t), r′′(t))

|r′(t)|3/2. (5)

According to this definition, a curve with positive (resp., negative) curvaturewill bend to the left (resp., right) as one is going along the curve in the directionof increasing t. See Figure 9.

For a rational r(t) = (x(t)/w(t), y(t)/w(t)), we have

κ =w3(x(y′w′′ − y′′w′) + y(w′x′′ − w′′x′) + w(x′y′′ − x′′y′))

((xw′ − x′w)2 + (yw′ − y′w)2)3/2(6)

Thus, if r(t) is a rational curve of degree n, locating zero-curvature points of ramounts to solving 3n−4 order univariate polynomial equations (2n−4 if poly-nomial curve). At the zero-curvature points on the boundary, we can get the

20

Page 22: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

κ > 0

κ < 0

Figure 9: Curvature sign convention

corresponding medial axis transform points. By these medial axis transformpoints, the original domain is further decomposed into fundamental domainswhose boundary curves have constant curvature sign except possibly at the endpoints. We can classify these fundamental domains into four possible casesaccording to the curvature sign. For convenience, we adopt the following con-ventions for the curvatures κr and κs of r and s, respectively: we denote κ∗ > 0if κ∗(t) > 0 for all t except possibly for t = 0, 1 and κ∗ ≥ 0 if κ∗ > 0 or κ∗(t) ≡ 0for all t. Similarly κ∗ < 0 and κ∗ ≤ 0 are defined.

Now we describe how to locate π-opening angle sections case by case.

Case 1: κr ≤ 0 and κs ≤ 0

For any given contact point r(t) on r, let s(u) be the corresponding contactpoint of r(t) on s. Note that u = u(t) is a decreasing function of t due to theorientation convention of the boundary curve. Let α(t) and β(u) be the anglesof r′(t) and s′(u) with respect to the positive x-axis, respectively such that

θ(t) = β(u)− α(t), (7)

which means that the opening angle θ(t) is equal to the angle from r′(t) to s′(u).(See Figure 10.) Since β(u) is a decreasing function of u and u = u(t) and α(t)is decreasing functions of t, θ(t) is an increasing function of t.

From this observation, we have the following result.

Proposition 9. If θ(0) > π or θ(1) < π, there is no critical horizontal sectionsin ΩF . If θ(0) ≤ π and θ(1) ≥ π, there exists exactly one critical horizontalsection, which is a valley in ΩF . In this case, if both r and s are line segments,i.e., κr ≡ 0 and κs ≡ 0, then the whole MAT(ΩF ) is a critical horizontalsection. Otherwise, the critical horizontal section is a single point.

Case 2: κr ≥ 0, κs ≥ 0

This case is analogous to the Case 1. Proposition 9 can be adapted as follows.

21

Page 23: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

r(t)

s(u)

r'(t)

s'(u)q(0) q(t) q(1)

Figure 10: κr ≤ 0, κs ≤ 0

r(t)

s(u)

Figure 11: κr ≥ 0, κs ≥ 0

Proposition 10. If θ(0) < π or θ(1) > π, there is no critical horizontal sectionsin ΩF . If θ(0) ≥ π and θ(1) ≤ π, there exists exactly one critical horizontalsection, which is a peak in ΩF . In this case, if both r and s are line segments,i.e., κr ≡ 0 and κs ≡ 0, then the whole MAT(ΩF ) is a critical horizontalsection. Otherwise, the critical horizontal section is a single point.

The locating algorithm is similar as in Case 1.

Case 3∗: κr > 0, κs < 0

In this case, we cannot determine the existence of peak or valley, or how manythere are, if any, with only the data of θ(0) and θ(1). In general, one canformulate an example which has as many peaks and valleys as one wishes withgiven θ(0) and θ(1) and under the condition κr > 0, κs < 0. For example, inFigure 12 we have one peak and one valley between p1 and p3 whereas none ofthem between p2 and p3. (Note that p1 and p2 have the same opening angleand radius.) Moreover, we cannot exclude the possibility that portions of r ands are offset curves to each other. We begin with this problem. Since MAT(Ω)is a real analytic curve at every generic 2-prong point and our fundamentaldomain consists of generic 2-prong only (except possibly at the end points),MAT(ΩF ) is a real analytic curve. By the real analyticity of radius componentof MAT(ΩF ), we have the following:

∗By changing the roles of r and s, we can also cover the case that κr < 0, κs > 0.

22

Page 24: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

p1

r

s p2

p3

Figure 12: κr > 0, κs < 0

Theorem 11. Either the whole MAT(ΩF ) is a c-horizontal section for somec > 0, or every c-horizontal section of MAT(ΩF ) consists of a finite number ofpoints.

That is, either the whole r and s are offset curves to each other (in this casewe call ΩF a parallel fundamental domain), or there is a finite number of criticalradius points. The decision of whether or not ΩF is parallel can be made infinite steps. The criterion for this is given in Theorem 13. Bezout’s theorem iscrucial in proving this theorem.

Theorem 12 (Bezout’s Theorem). Two relatively prime polynomials f, g ∈C[x, y] of degree d1 and d2 can have at most d1d2 simultaneous solutions.

For a given polynomial h(x, y), the equation h(x, y) = 0 usually defines acurve in R2. But in some cases, the solution of h(x, y) = 0 consists of a singlepoint. (For example h(x, y) = x2 + y2.) We call such a solution an isolatedsolution. To be precise, a point (x0, y0) is called an isolated solution of theequation h(x, y) = 0, if for some neighborhood V of (x0, y0), there is no othersolution than (x0, y0) in V .

The next is then an easy corollary of the Bezout’s theorem.

Corollary. Let h(x, y) be an irreducible polynomial over R of positive degree d.Then h(x, y) = 0 can have at most d(d− 1) isolated solutions.

Proof. If (x0, y0) is an isolated solution of h(x, y) = 0, then ∂h∂x (x0, y0) =

∂h∂y (x0, y0) = 0. That is, (x0, y0) is a simultaneous solution of

h(x, y) = 0 (8)∂h

∂x(x, y) = 0 (9)

∂h

∂y(x, y) = 0. (10)

23

Page 25: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

Since h is irreducible, h and ∂h∂x (or ∂h

∂y ) are relatively prime. Now the resultfollows from Bezout’s theorem.

Theorem 13. Let ΩF be a fundamental domain with boundary curves r and s.Suppose r and s are rational curves of degree m and n, respectively. Then ΩF

is parallel if and only if:

(i) the radii at ends are same, i.e., r(0) = r(1), and

(ii) For some distinct N +1 points 0 = t0, . . . , tN = 1, where N = (2m+2n−1)2, we have θ(t0) = · · · = θ(tN ) = π.

If ΩF is parallel, then for any N + 1 points, the second condition is satisfied.What this theorem says is that any one set S of N + 1 points is enough. If oneof ti in S does not satisfy the condition, then ΩF is not parallel. Otherwise, i.e.,if every ti in S does satisfy the condition, then ΩF is parallel.

Proof. One way is obvious. Conversely, let s(ui), i = 0, . . . , N be the corre-sponding contact points of r(ti) on s. Since θ(ti) = π, (ti, ui) are solutionsof

r′(t) · (r(t)− s(u)) = 0 (11)s′(u) · (s(u)− r(t)) = 0. (12)

If one substitutes

r(t) =1

c(t)(a(t), b(t)) (13)

s(u) =1

f(u)(d(u), e(u)), (14)

the above equations are reduced to polynomial equations

P (t, u) = (af − cd)(a′c− ac′) + (bf − ce)(b′c− bc′) = 0 (15)Q(t, u) = (af − cd)(d′f − df ′) + (bf − ce)(e′f − ef ′) = 0. (16)

Note that both P and Q have total degree of, at most, 2m + 2n − 1. In viewof Bezout’s theorem, P and Q must have a common factor of positive degree.Let h be the greatest common divisor of P and Q. Suppose h is written as aproduct

h = h1 · · ·hr (17)

of irreducibles over R of positive degree d1, . . . , dr. Now if we write P = P1hand Q = Q1h, then (ti, ui) are simultaneous solutions of

P1(t, u) = 0 (18)Q1(t, u) = 0 (19)

24

Page 26: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

or solutions of one of the equations

h1 = 0...

hr = 0.

Substitute d0 = 2m + 2n − 1 − d where d = d1 + · · · + dr. Since P1 and Q1

are relatively prime polynomials of degree d0, they have at most d02 solutions

and each hi has at most di(di − 1) isolated solutions. The number of all thesesolutions amount to d2

0 +d1(d1−1)+ · · ·+dr(dr−1) < (d0 + · · ·+dr)2 < N +1.Thus, at least one of (ti, ui) is the solution of hj which is not isolated. That

is, for some i, j we have hj(ti, ui) = 0 and one of the partial derivative, say∂hj

∂u (ti, ui), is not equal to zero. By the implicit function theorem, there is φ ∈ C1

such that (t, φ(t)), for some neighborhood of ti, is the solution of hj(t, u) andhence Equations (8) and (9). In addition, L(t, u) = (r(t)− s(u)) · (r(t)− s(u)),under the constraints of (8) and (9), measures the diameter of the contactdisks. If we substitute u = φ(t), then it is easy to see that dL

dt (t, φ(t)) = 0in a neighborhood of ti, which means that ΩF contains a parallel fundamentaldomain. By Theorem 11, the whole ΩF must be parallel.

Let us now study the discrete critical horizontal sections in ΩF as stated inTheorem 11. We first introduce an iterative procedure of securing regions thatare free of any critical horizontal sections.

Let us continue to suppose κr > 0 and κs < 0 as in Case 3. Let α(t) be theangle of r′(t) and β(u) be that of s′(u) as in the proof of Proposition 9. Assumealso that total angle variations of r′(t) and s′(u) do not exceed π, i.e.,

∆α =∫ 1

0

κr(t)|r′(t)|dt < π, (20)

∆β =∫ 1

0

κs(u)|s′(u)|du > −π. (21)

The reason behind this assumption is that we do not want to deal with exces-sively bent fundamental domains. And this assumption can be easily satisfiedby inserting some contact disks, if necessary, in the fundamental domain con-cerned. Now we are ready to start the procedure. Take r(t1) for any 0 < t1 < 1and let s(u1) be the corresponding contact point on s. Let θ1 be the openingangle at r(t1). Note that r′(t) rotates positively and s′(u) negatively as the cor-responding parameters increase. Suppose first θ1 > π. Since β(u1) = α(t1)+θ1,the parameter t2 such that α(t2)+ π = β(u1), i.e., such that r′(t2) is parallel tos′(u1) satisfies t2 > t1. Then we can claim that

Proposition 14. The fundamental domain defined by contact disks r(t1) andr(t2) has no critical horizontal sections.

Proof. Let s(u2) be the corresponding contact point of r(t2), p be a medial axispoint in the fundamental domain, and r(t) and s(u) be the contact points of p.

25

Page 27: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

r

s

u1

θ1

u2 u3

t1

t2

t3

Figure 13: Monotone Region

To prove that p is not a critical horizontal section, we only need to show that theopening angle of p, i.e., β(u)−α(t) never equals 2kπ+π for any integer k. Notethat we have t1 < t < t2 and u1 > u > u2. Since β(u1) < β(u) < β(u2) andα(t1) < α(t) < α(t2), we have β(u1)−α(t2) < β(u)−α(t) < β(u2)−α(t1). Nowthe result follows by the observation that β(u1)−α(t2) = π and β(u2)−α(t1) =β(u2)− β(u1) + θ1 < π + θ1 < 3π.

Let θ2 be the opening angle at r(t2). Since θ2 > π, by applying the aboveprocedure recursively, we can obtain an increasing sequence tk such that theopening angle at r(tk) is larger than π. In the same way, but in an oppositedirection, we can also obtain a decreasing sequence t′k such that t′1 = t1 andthe opening angle at r(t′k) is larger than π. So, we can obtain two sequencestk and t′k each of which is marching in each direction.

Now if θ1 < π, the procedure follows similarly except that the opening angleis smaller than π. So, we can also obtain two sequences tk and t′k each ofwhich is marching in each direction.

Theorem 15. If the sequence tk ( or t′k) obtained from the above procedureconverges to some 0 ≤ τ ≤ 1, then the medial axis transform point correspondingto r(τ) is a critical horizontal section.

Proof. Since α(tk) + θk = β(uk) and β(uk) − α(tk+1) = π, we have α(tk+1) −α(tk) = θk − π. Furthermore, we have

α(tk+1)− α(tk) =∫ tk+1

tk

κr(t)|r′(t)|dt.

Since θ(t) is continuous and θ(tk)− π = α(tk+1)− α(tk), we must have θ(τ) =π.

Given any fundamental domain ΩF with κr > 0 and κs < 0, we first take themedial axis transform point corresponding to the boundary point r(1

2 ). From

26

Page 28: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

this medial axis transform point, we march (in both directions) to the nearestcritical horizontal section in ΩF . If we are out of ΩF during the march, then ΩF

has no critical horizontal section. Otherwise, if we come to a critical horizontalsection p, we keep the record of p and restart with the fundamental domaindefined by p and one of the medial axis transform points p(0) and p(1) that iscloser to p. In this way, we can locate all critical horizontal sections in ΩF .

6 Monotonic fundamental domain

Following the procedures of the previous sections, we can decompose the orig-inal domain into many fundamental domains containing no critical horizontalsections, i.e., no local maximal or minimal radius component. Thus all of ourfundamental domains have monotone increasing or decreasing radius function.We will call them monotonic fundamental domains.

Now we discuss how to utilize the monotonic fundamental domain ΩMF tolocate the offset curve segments in ΩMF . We can assume that a parameterization(p(v), r(v)) of MAT(ΩMF ), defined on the interval [0, 1], so chosen that r(v)is monotone increasing. First of all, then, with the data of r(0) and r(1), wecan answer the question whether or not there exists any self-intersection pointsof the d-offset curves. Recall that the self-intersection points of d-offset curvesare the medial axis points with a d radius value. We have also seen in Section2 that d-offset curve is the envelope of d-cutoff of MAT(ΩMF ).

Now, if d < r(0), there exists no self-intersection point since r(v) > d forall 0 ≤ u ≤ 1. And the d-offset curves consist of a pair of curves rd(t) andsd(u) for t, u ∈ [0, 1]. On the other hand, if r(0) ≤ d ≤ r(1), then r(v) = d forexactly one v ∈ [0, 1]. (Unless r(0) = r(1), i.e., ΩF is a parallel fundamentaldomain. In this case, the d-offset curve is MA(ΩMF ) itself.) Finally, if r(1) < d,then the d-cutoff of MAT(ΩMF ) is an empty set, which means that there is nod-offset curve at all in ΩMF . We summarize these results as follows (see alsoFigures 14,15, and 16):

• d < r(0): Since r(v) > d for all v ∈ [0, 1], (p(v), r(v) − d) is a parame-terization of MAT(ΩMF )d for v ∈ [0, 1], and there is no self-intersectionpoints.

• r(0) ≤ d ≤ r(1): Since r(v) is monotonic increasing, there exists uniquec ∈ [0, 1] satisfying r(c) = d. Then (p(v), r(v) − d) for c ≤ u ≤ 1 is aparameterization of MAT(ΩMF )d, and p(c) is the self-intersection point.

• r(1) < d: Since r(v) < d for all v ∈ [0, 1], MAT(ΩMF )d is empty, and sois the d-offset curve.

So, as we go through each monotonic fundamental domain ΩMF , one byone, of the original domain Ω, we do nothing and just ignore it if d > r(0) andd > r(1). If d < r(0) and d < r(1), we compute rd and sd and record themas d-offset curve of ΩMF . Finally, if r(0) ≤ d ≤ r(1) or r(0) ≥ d ≥ r(1), wefirst check if ΩMF is parallel. If so, rd, sd, and MA(ΩMF ) are all the same

27

Page 29: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

r

s

Figure 14: d < r(0) ≤ r(1)

r

s

Figure 15: r(0) ≤ d ≤ r(1)

r

s

Figure 16: r(0) ≤ r(1) < d

and each of them is the d-offset curve of ΩMF . If ΩMF is not parallel, theunique self-intersection point can be located as follows. We can consider thatMAT(ΩMF ) is parameterized by t or u, the parameters of the boundary curver or s, respectively. The fact that we can get the medial axis transform point(p(t), r(t)) for any given boundary point r(t) for t ∈ [0, 1] amounts to that we can“evaluate” the MAT(ΩMF ) as a function of t, especially the radius componentr(t). Recall that the self-intersection point is equivalent to solution of r(t) = d.Thus we can apply any numerical approximation scheme to solve this equation,for example the Newton-Raphson method. (Note that we can evaluate the

28

Page 30: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

derivative r′(t) by the Equation (4).) After we find the self-intersection point, orequivalently the contact disk with radius d, the monotonic fundamental domainΩMF is divided by the contact disk. The resulting two monotonic fundamentaldomains are just same as those considered above and we treat them accordingly.This procedure relies on numerical computation. Thus there may be numericalerrors. However, the global, i.e., topological, nature remains unaltered.

7 Illustrated example

In Figure 17(a), a domain with a hole inside is decomposed into three fundamen-tal domains. This process was addressed in [5]. In Figure 17(b), we insertedthree contact disks that correspond to the inflection points of the boundarycurve. Now, the boundaries of the resulting fundamental domains have con-stant curvature signs. In Figure 17(c), all peaks and valleys are found, if any, ineach fundamental domain. Now the resulting fundamental domains are mono-tonic fundamental domains. In Figure 17(d), the self-intersection points for agiven value d are found, if any, in each monotonic fundamental domain. Finally,in Figure 17(e), offset curves are computed in each valid fundamental domain.

(a) Step 1 - Fundamental Domains (b) Step 2 - Constant curvature sign

(c) Step 3 - Monotonic Fundamental Do-mains

(d) Step 4 - Self-intersection points

(e) Step 5 - Final offset curves

29

Page 31: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

References

[1] R. Ait-Haddou, L. Biard, and M. A. Slawinski. Minkowski isoperimetric-hodograph curves. Computer Aided Geometric Design, 17(9):835–861, Oct2000.

[2] C.-S. Chiang, C. M. Hoffmann, and R. E. Lynch. How to compute offsetswithout self-intersection. Technical Report CSD-TR-91-072, Computer Sci-ences Department, Purdue University, October 1991.

[3] B. K. Choi and S. C. Park. A pair-wise offset algorithm for 2d point-sequence curve. Computer-Aided Design, 31(12):735–745, Oct 1999.

[4] H. I. Choi, S. W. Choi, and H. P. Moon. Mathematical theory of medialaxis tranform. Pacific Journal of Mathematics, 181(1):57–88, 1997.

[5] H. I. Choi, S. W. Choi, H. P. Moon, and N.-S. Wee. New algorithm formedial axis transform of plane domain. Graphical Models and Image Pro-cessing, 59(6):463–483, November 1997.

[6] J. J. Chou and E. Cohen. Computing offsets and tool paths with Voronoidiagrams. Technical report, Department of Computer Science, Universityof Utah, Salt Lake City, UT 84112 USA, August 1990.

[7] S. H. F. Chuang and C. Z. Kao. One-sided arc approximation of b-splinecurves for interference-free offsetting. Computer-Aided Design, 31(2):111–118, Feb 1999.

[8] S. Coquillart. Computing offsets of B-spline curves. Computer-Aided De-sign, 19(6):305–309, Jul 1987.

[9] G. Elber, I.-K. Lee, and M.-S. Kim. Comparing offset curve approximationmethods. IEEE Computer Graphics and Applications, 17(3):62–71, May-Jun 1997.

[10] R. T. Farouki. Conic approximation of conic offsets. Journal of SymbolicComputation, 23:301–313, 1997.

[11] R. T. Farouki and C. A. Neff. Algebraic properties of plane offset curves.Computer Aided Geometric Design, 7:101–127, 1990.

[12] R. T. Farouki and C. A. Neff. Analytic properties of plane offset curves.Computer Aided Geometric Design, 7:83–99, 1990.

[13] R. T. Farouki and R. Ramamurthy. Specified-precision computation ofcurve/curve bisector. Technical Report UM-MEAM-96-10, Dept. of Me-chanical Engineering and Applied Mechanics, University of Michigan, AnnArbor, MI 48109.

[14] R. T. Farouki and S. T. Pythagorean hodographs. IBM Journal of Researchand Development, 34:736–752, 1990.

30

Page 32: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

[15] H.-Y. Feng and H. Li. Constant scallop-height tool path generationfor three-axis sculptured surface machining. Computer-Aided Design,34(9):647–654, Aug 2002.

[16] G. Glaeser, J. Wallner, and H. Pottmann. Collision-free 3-axis milling andselection of cutting tools. Computer-Aided Design, 31(3):225–232, Mar1999.

[17] M. Held. On the Computational Geometry of Pocket Machining. LectureNotes in Computer Science 500. Springer-Verlag, 1991.

[18] M. Held, G. Lukacs, and L. Andor. Pocket machining based on coutour-parallel tool paths generated by means of proximity maps. Computer-AidedDesign, 26(3):189–203, March 1994.

[19] V. D. Holla, K. G. Shastry, and B. G. Prakash. Offset of curves on tessel-lated surfaces. Computer-Aided Design, 35(12):1099–1108, Oct 2003.

[20] H.-W. L. Hon-Yuen Tam and H. Xu. A geometric approach to the offsettingof profiles on three-dimensional surfaces. Computer-Aided Design, 36:887–902, 2004.

[21] J. Hoschek. Offset curves in the plane. Computer-Aided Design, 17(2):77–82, March 1985.

[22] J. Hoschek. Spline approximation of offset curves. Computer Aided Geo-metric Design, 5:33–40, 1988.

[23] K. C. Hui. Free-form design using axial curve-pairs. Computer-Aided De-sign, 34(8):583–595, July 2002.

[24] C.-S. Jun, D.-S. Kim, and S. Park. A new curve-based approach to poly-hedral machining. Computer-Aided Design, 34(5):379–389, Api 2002.

[25] B. Juttler and C. Maurer. Cubic pythagorean hodograph spline curves andapplications to sweep surface modeling. Computer-Aided Design, 31(1):73–83, Jan 1999.

[26] R. Klass. An offset spline approximation for plane cubic splines. Computer-Aided Design, 15(5):297–299, September 1983.

[27] C. Lartigue, F. Thiebaut, and T. Maekawa. Shapes with offsets of nearlyconstant surface area. Computer-Aided Design, 31(4, 1):287–296, Apr 1999.

[28] C. Lartigue, F. Thiebaut, and T. Maekawa. Cnc tool path in terms ofb-spline curves. Computer-Aided Design, 33(4, 2):307–319, Apr 2001.

[29] E. Lee. Contour offset approach to spiral toolpath generation with constantscallop height. Computer-Aided Design, 35(6):511–518, May 2003.

31

Page 33: INSTITUTE FOR MATHEMATICS AND ITS APPLICATIONS · 2016-05-25 · TWO-DIMENSIONAL OFFSETS AND MEDIAL AXIS TRANSFORM By Hyeong In Choi, Sung Woo Choi Chang Yong Han, Tae-wan Kim Song-Hwa

[30] I.-K. Lee, M.-S. Kim, and G. Elber. Planar curve offset based on circleapproximation. Computer-Aided Design, 28(8):617–630, Aug 1996.

[31] D. S. Meek and D. J. Walton. Offset curves of clothoidal splines. Computer-Aided Design, 22(4):199–201, May 1990.

[32] S. C. Park and B. K. Choi. Uncut free pocketing tool-paths generationusing pair-wise offset algorithm. Computer-Aided Design, 33(10):739–748,Sep 2001.

[33] S. C. Park and Y. C. Chung. Offset tool-path linking for pocket machining.Computer-Aided Design, 34(4):299–308, Api 2002.

[34] S. C. Park, Y. C. Chung, and B. K. Choi. Contour-parallel offset machin-ing without tool-retractions. Computer-Aided Design, 35(9):841–849, Aug2003.

[35] H. Persson. NC machining of arbitrarily shaped pockets. Computer-AidedDesign, 10(3):169–174, May 1978.

[36] B. Pham. Offset approximation of uniform B-splines. Computer-AidedDesign, 20(8):471–474, Oct 1988.

[37] B. Pham. Offset curves and surfaces: A brief survey. Computer-AidedDesign, 24(4):223–229, Apr 1992.

[38] L. A. Piegl and W. Tiller. Computing offsets of NURBS curves and sur-faces1. Computer-Aided Design, 31(2):147–156, Feb 1999.

[39] H. Pottmann. Curve design with rational Pythagorean-hodograph curves.Advances in Computational Mathematics, 3:147–170, 1995.

[40] H. Pottmann. Rational curves and surfaces with rational offsets. ComputerAided Geometric Design, 12(2):175–192, Mar 1995.

[41] G. V. V. Ravi Kumar, K. G. Shastry, and B. G. Prakash. Computingnon-self-intersecting offsets of NURBS surfaces. Computer-Aided Design,34(3):209–228, Mar 2002.

[42] W. Tiller and E. G. Hanson. Offsets of two-dimensional profiles. IEEEComputer Graphics and Applications, 4:36–46, 1984.

[43] L. Z. Wang, K. T. Miura, E. Nakamae, T. Yamamoto, and T. J. Wang. Anapproximation approach of the clothoid curve defined in the interval [0, /2]and its offset by free-form curves. Computer-Aided Design, 33(14):1049–1058, Dec 2001.

32