In differential geometry, a parallel curve, also called an offset curve,[1] is a generalization of the idea of parallel lines to all 2D curves. The concept further generalizes to 3D surfaces where it is called a parallel surface as well as an offset surface. Multiple mathematical definitions exist for parallel curves, not all of which are equivalent.The names "offset curve" and "offset surface" are particularly common in computer-aided design (CAD)[2] and computer graphics contexts.[3]
Parallel curves have multiple practical applications in fields including numerically controlled machining and computer graphics. In numerically controlled machining, they can be used to describe the shape cut out by a round cutting tool of a two-axis machine, such as a CNC wood router.[4] In vector graphics, the approximation of parallel curves is involved in one of the fundamental drawing operations called "stroking".[5] Stroking involves increasing the thicknesses of paths, typically polylines, a connected series of lines, or polybeziers, a connected series of Bézier curves.[6]
Parallel surfaces are important in numerically controlled machining, where they describe the shape of the cut made by a ball-nose-end mill of a three-axis machine.[7] Other shapes of cutting bits can be modeled mathematically by general parallel surfaces.[8]
In most cases, a parallel curve does not maintain the same properties as its generating curve (the curve the parallel curve is based on).[9] For example, even if a generating curve is smooth, its parallel curve may not be.[10] Similarly, even if a curve is rational, such as an ellipse or hyperbola, its parallel curves generally are not so.[11]: 638
Definitions and terminology
editParallel curves can be defined multiple ways, including:
- the envelope of circles with fixed radii centered on a generating curve,
- the locus of the points which are at a fixed, normal distance from a generating curve,[9]
- the locus of consecutive intersections of a system of congruent circles centered on a generating curve,[9] and
- the boundary of the Minkowski sum of a disk and an generating curve[10]: 130
The four definitions of a parallel curve are not always equivalent. For example, the first assumes smoothness of the generating function while the second does not.[10] Additionally, the Minkowski addition based definition is only valid when the generating curve is a boundary of a planar set and its parallel curve is does not intersect itself.[citation needed]
A parallel surface with a greater volume than that of its generating surface is sometimes called "dilation"[12] and the reverse is sometimes called a "shelling".[11]
The variable is commonly used for the distance between a generating curve and a parallel curve.
General geometric properties
edit- Tangent vectors of a generating curve are parallel to the corresponding normal vectors of its parallel curve.
- Additionally, the same is true for the normal vectors of a generating and parallel curve.
- Parallel curves have cusps when the curvatures of the generating curve and the parallel curve are equal. The cusps are also points where the curve touches the evolute.
- The radii where and are respectively the radii of curvature of the generating and parallel curves.
- where and are respectively the curvatures of the generating and the parallel curves.[13]
Parametric curves
editA regular parametric representation, , of a curve using locus of points definition of leads to the following parametric representation of the parallel curve a distance away:
- where representing the unit normal vector of at .
Translated into Cartesian coordinates:
In the cases when is negative, the parallel curve is on the opposite side of the generating curve than when is positive.
If the generating curve is polynomial, meaning that both and are polynomials, then the parallel curves are usually not polynomial.[14] In the context of CAD, this is a drawback because CAD systems use polynomials or rational curves. In order to get at least rational curves, the square root of the representation of the parallel curve has to be solvable. Such curves are called "pythagorean hodograph curves" and were covered in detail by R.T. Farouki.[15]
Implicit curves
editGenerally, the analytic representation of a parallel curve based on an implicit curve is not possible. Only for the simple cases of lines and circles the parallel curves can be described easily. For example, the line has the distance function inHesse normal form. Similarly, the circle has the distance function .
In general, presuming certain conditions, one can prove the existence of an oriented distance function , but in practice one has to treat it numerically.[13][need quotation to verify]
Properties of the distance function
edit- The parallel curve for distance d is the level set of the corresponding oriented distance function ,[13]
- ,
- ,
- .[16]
Of note, the curves are not parallel curves of because in the area of interest.
Specific cases
edit- The involutes of an generating curve are a set of parallel curves. For example: the involutes of a circle are parallel spirals.
The following is true about the parallel curves of certain generating functions:[14]
- A parabola has as (two-sided) offsets rational curves of degree 6.
- A hyperbola or an ellipse has as (two-sided) offsets an algebraic curve of degree 8.
- A Bézier curve of degree n has as (two-sided) offsets algebraic curves of degree 4n − 2. In particular, a cubic Bézier curve has as (two-sided) offsets algebraic curves of degree 10.
- More information at http://web.archive.org/web/20160303214952/http://www3.uah.es/fsegundo/Otros/Offset/16-SanSegundoSendraSendra-1532.pdf
Corners
editWhen determining the cutting path of part with a sharp corner for machining, a parallel curve needs to defined which accommodates the discontinuous normal of the generating curve at the corner. Even though the generating curve is not smooth at the sharp corner, its parallel curve may be smooth with a continuous normal, or it may have may have cusps when the distance from the curve matches the radius of curvature at the sharp corner.
Normal fans
editAs described in the section on parametric curves, the parametric representation of a parallel curve, , to a generating curve, , with distance is:
- with the unit normal .
At a sharp corner, for example where , the normal to is undefined. This is because has a jump discontinuity at . Specifically, the one-sided limit of the normal from the left, , is unequal to the limit from the right, . Mathematically,
- .
A normal fan can be used in the interpolate between and by being used in place of at the sharp corner in the definition of [8] Such a normal fan is defined as
- where .
The resulting definition of the parallel curve incorporating the normal fan is
Algorithms
editThis section needs expansion. You can help by adding to it. (August 2014) |
An efficient algorithm for offsetting is the level approach described by Kimel and Bruckstein (1993).[17]
There are numerous approximation algorithms for this problem, cf. Elber et. al. 1997.[18]
Parallel surfaces
editparallel surfaces are important in numerically controlled machining, where they describe the shape of the cut made by a ball nose end mill of a three-axis mill.[7] If there is a regular parametric representation of the generating surface available, the second definition of a parallel curve (see above) generalizes to the following parametric representation of the parallel surface with distance :
- with the unit normal .
Distance parameter may be negative, too. In this case one gets a parallel surface on the opposite side of the surface (see similar diagram on the parallel curves of a circle). One easily checks: a parallel surface of a plane is a parallel plane in the common sense and the parallel surface of a sphere is a concentric sphere.
- that means: the tangent vectors for fixed parameters are parallel.
- that means: the normal vectors for fixed parameters match direction.
- where and are the shape operators for and , respectively.
- The principal curvatures are the eigenvalues of the shape operator, the principal curvature directions are its eigenvectors, the Gaussian curvature is its determinant, and the mean curvature is half its trace.
- where and are the inverses of the shape operators for and , respectively.
- The principal radii of curvature are the eigenvalues of the inverse of the shape operator, the principal curvature directions are its eigenvectors, the reciprocal of the Gaussian curvature is its determinant, and the mean radius of curvature is half its trace.
Note the similarity to the geometric properties of parallel curves.
Generalizations
editParallel curves directly generalize to higher dimensions, including parallel surfaces in three dimensions, and, with a little more work, pipe surfaces.[20] Terminology varies widely for higher dimensional generalizations since there are multiple kinds.[21]: 172 Names include parallel fibers, ribbons, and tubes.[21]: 172–174 For curves embedded in 3D surfaces the offset may be taken along a geodesic.[22]
Another way to generalize parallel curves is, even in 2D, to consider a variable distance, for example, a situation where the distance is parameterized by another function.[19] Other generalizations involve stroking, i.e. forming the envelope, with an ellipse instead of circle,[19] as it is possible for example in METAFONT.[23] In 2010, a similar feature was added in Adobe Illustrator in version CS5, where control points for the variable width are visually specified.[24]
In contexts where it's important to distinguish between constant and variable distance offsetting the acronyms "CDO" for "constant distance offsetting" and "VDO" for "variable distance offsetting" are sometimes used.[12]: 3–5
General parallel curves
editA regular parametric representation of a curve, , together with a second function that can be parameterized by its unit normal, , where the normal of . The parametric representation of the general offset curve of offset by is:
- where is the unit normal of .
Note that the trivial offset, , gives you ordinary parallel (aka, offset) curves.
(this parameterization by normal exists for curves whose curvature is strictly positive or negative, and thus convex, smooth, and not straight)
- The curvature of the a parallel curve, , the curvature of , , and the curvature of are related such that
- with the radius of curvature of the general offset curve, the radius of curvature of , and the radius of curvature of for parameter .
General parallel surfaces
editGeneral parallel surfaces describe the shape of cuts made by a variety of cutting bits used by three-axis end mills in numerically controlled machining.[8] Assume you have a regular parametric representation of a surface, , and you have a second surface that can be parameterized by its unit normal, , where the normal of (this parameterization by normal exists for surfaces whose Gaussian curvature is strictly positive, and thus convex, smooth, and not flat). The parametric representation of the general parallel surface of offset by is:
- where is the unit normal of .
Note that the trivial offset, , gives you ordinary parallel (aka, offset) surfaces.
- As for parallel lines, the tangent plane of a surface is parallel to the tangent plane of its general offsets.
- As for parallel lines, a normal to a surface is also normal to its general offsets.
- where and are the shape operators for and , respectively.
- The principal curvatures are the eigenvalues of the shape operator, the principal curvature directions are its eigenvectors, the Gaussian curvature is its determinant, and the mean curvature is half its trace.
- where and are the inverses of the shape operators for and , respectively.
- The principal radii of curvature are the eigenvalues of the inverse of the shape operator, the principal curvature directions are its eigenvectors, the reciprocal of the Gaussian curvature is its determinant, and the mean radius of curvature is half its trace.
Note the similarity to the geometric properties of general offset curves.
Derivations of properties
editThe geometric properties listed above for general offset curves and surfaces can be derived for offsets of arbitrary dimension. Assume you have a regular parametric representation of an n-dimensional surface, , where the dimension of is n-1. Also assume you have a second n-dimensional surface that can be parameterized by its unit normal, , where the normal of (this parameterization by normal exists for surfaces whose Gaussian curvature is strictly positive, and thus convex, smooth, and not flat). The parametric representation of the general parallel surface of offset by is:
- where is the unit normal of . (The trivial offset, , gives you ordinary parallel surfaces.)
First, notice that the normal of the normal of by definition. Now, we'll apply the differential w.r.t. to , which gives us its tangent vectors spanning its tangent plane.
Notice, the tangent vectors for are the sum of tangent vectors for and its offset , which share the same unit normal. Thus, the general parallel surface shares the same tangent plane and normal with and . That aligns with the nature of envelopes.
We now consider the Weingarten equations for the shape operator, which can be written as . If is invertible, . Recall that the principal curvatures of a surface are the eigenvalues of the shape operator, the principal curvature directions are its eigenvectors, the Gauss curvature is its determinant, and the mean curvature is half its trace. The inverse of the shape operator holds these same values for the radii of curvature.
Substituting into the equation for the differential of , we get:
- where is the shape operator for .
Next, we use the Weingarten equations again to replace :
- where is the shape operator for .
Then, we solve for and multiple both sides by to get back to the Weingarten equations, this time for :
Thus, , and inverting both sides gives us, .
See also
editReferences
edit- ^ Sendra, J. Rafael; Winkler, Franz; Pérez Díaz, Sonia (2007). Rational Algebraic Curves: A Computer Algebra Approach. Springer Science & Business Media. p. 10. ISBN 978-3-540-73724-7.
- ^ Agoston, Max K. (2005). Computer Graphics and Geometric Modelling: Mathematics. Springer Science & Business Media. p. 586. ISBN 978-1-85233-817-6.
- ^ Weisstein, Eric (n.d.). "Parallel Curves". Wolfram MathWorld. Retrieved 14 May 2020.
- ^ Marsh, Duncan (2006). Applied Geometry for Computer Graphics and CAD (2nd ed.). Springer Science & Business Media. p. 107. ISBN 978-1-84628-109-9.
- ^ Kilgard, Mark (April 10, 2012). "Vector Graphics & Path Rendering". Slideshare. p. 28. Retrieved 14 May 2020.
- ^ Cite error: The named reference
Kilgard2020
was invoked but never defined (see the help page). - ^ a b Faux, I. D.; Pratt, Michael J. (1979). Computational Geometry for Design and Manufacture. Halsted Press. ISBN 978-0-47026-473-7. OCLC 4859052.
- ^ a b c Brechner, Eric L. (May 1990). Envelopes and tool paths for three-axis end milling (PhD thesis). Troy, NY: Rensselaer Polytechnic Institute Department of Mathematics. OCLC 1150126116.
- ^ a b c Willson, Frederick Newton (1898). Theoretical and Practical Graphics. Macmillan. p. 66. ISBN 978-1-113-74312-1.
- ^ a b c Devadoss, Satyan L.; O'Rourke, Joseph (2011). Discrete and Computational Geometry. Princeton University Press. pp. 128–129. ISBN 978-1-4008-3898-1.
- ^ a b Agoston, Max K. (2005). Computer Graphics and Geometric Modelling: Implementation and Algorithms. Springer Science & Business Media. pp. 638–645. ISBN 978-1-85233-818-3.
- ^ a b Zhou, Wei; Rossignac, Jarek (August 2012). "Curvature-based offset distance: Implementations and applications" (PDF). Computers & Graphics. 36 (5): 447. doi:10.1016/j.cag.2012.03.013 – via Elsevier Science Direct.
- ^ a b c Hartmann, Erich (October 2003). Geometry and Algorithms for Computer Aided Design (PDF). Darmstadt, Germany: Technische Universität Darmstadt. p. 30.
- ^ a b Farouki, Rida (February 2013). "Introduction to Pythagorean-hodograph curves" (PDF). UC Davis Mechanical and Aerospace Engineering. p. 16. Retrieved 13 May 2020.
- ^ Farouki, Rida (2008). Pythagorean-Hodograph Curves: Algebra and Geometry Inseparable. Geometry and Computing. Vol. 1. Springer-Verlag Berlin Heidelberg. doi:10.1007/978-3-540-73398-0. ISBN 978-3-540-73397-3.
- ^ J.A. Thorpe: Elementary topics in Differential Geometry, Springer-Verlag, 1979, ISBN 0-387-90357-7.
- ^ Kimmel and Bruckstein (1993) Shape offsets via level sets CAD (Computer Aided Design) 25(3)hartmann54–162.
- ^ Elber, Gershon (May–June 1997). "Comparing Offset Curve Approximation Methods" (PDF). IEEE Computer Graphics and Applications. 17 (3): 62–71. doi:10.1109/38.586019. Archived from the original on 19 August 2014 – via IEEE Computer Society.
{{cite journal}}
: CS1 maint: date format (link) CS1 maint: unfit URL (link) - ^ a b c d e Brechner, Eric L. (1992). "5. General Offset Curves and Surfaces". In Barnhill, Robert E. (ed.). Geometry Processing for Design and Manufacturing. SIAM. pp. 101–. ISBN 978-0-89871-280-3.
- ^ Pottmann, Helmut; Wallner, Johannes (2001). Computational Line Geometry. Springer Science & Business Media. pp. 303–304. ISBN 978-3-540-42058-3.
- ^ a b Chirikjian, Gregory S. (2009). Stochastic Models, Information Theory, and Lie Groups, Volume 1: Classical Results and Geometric Methods. Springer Science & Business Media. pp. 172–174. ISBN 978-0-8176-4803-9.
- ^ Iglesias, Andres (2003). "Computational Methods for Geometric Processing of Surfaces: Blending, Offsetting, Intersection, Implicitization". In Sarfraz, Muhammad (ed.). Advances in Geometric Modeling. Kings Lynn, Norfolk: Wiley. p. 72. ISBN 0-470-859377.
- ^ Kinch, Richard (September 1995). "MetaFog: Converting METAFONT Shapes to Contours" (PDF). TUGboat. 16 (3): 233–243 – via TeX Users Group.
- ^ "Using variable-width strokes". Adobe Help Center. October 23, 2017. Retrieved June 19, 2020.
- Josef Hoschek: Offset curves in the plane. In: CAD. 17 (1985), S. 77–81.
- Takashi Maekawa: An overview of offset curves and surfaces. In: CAD. 31 (1999), S. 165–173.
Further reading
edit- Farouki, R. T.; Neff, C. A. (1990). "Analytic properties of plane offset curves". Computer Aided Geometric Design. 7 (1–4): 83–99. doi:10.1016/0167-8396(90)90023-K.
- Piegl, Les A. (1999). "Computing offsets of NURBS curves and surfaces". Computer-Aided Design. 31 (2): 147–156. CiteSeerX 10.1.1.360.2793. doi:10.1016/S0010-4485(98)00066-9.
- Porteous, Ian R. (2001). Geometric Differentiation: For the Intelligence of Curves and Surfaces (2nd ed.). Cambridge University Press. pp. 1–25. ISBN 978-0-521-00264-6.
- Patrikalakis, Nicholas M.; Maekawa, Takashi (2010) [2002]. Shape Interrogation for Computer Aided Design and Manufacturing. Springer Science & Business Media. Chapter 11. Offset Curves and Surfaces. ISBN 978-3-642-04074-0. Free online version.
- Anton, François; Emiris, Ioannis Z.; Mourrain, Bernard; Teillaud, Monique (May 2005). "The O set to an Algebraic Curve and an Application to Conics". International Conference on Computational Science and its Applications. Singapore: Springer Verlag. pp. 683–696.
- Farouki, Rida T. (2008). Pythagorean-Hodograph Curves: Algebra and Geometry Inseparable. Springer Science & Business Media. pp. 141–178. ISBN 978-3-540-73397-3. Pages listed are the general and introductory material.
- Au, C. K.; Ma, Y.-S. (2013). "Computation of Offset Curves Using a Distance Function: Addressing a Key Challenge in Cutting Tool Path Generation". In Ma, Y.-S. (ed.). Semantic Modeling and Interoperability in Product and Process Engineering: A Technology for Engineering Informatics. Springer Science & Business Media. pp. 259–273. ISBN 978-1-4471-5073-2.
External links
edit- Parallel curves on MathWorld
- Visual Dictionary of Plane Curves Xah Lee
- http://library.imageworks.com/pdfs/imageworks-library-offset-curve-deformation-from-Skeletal-Anima.pdf application to animation; patented as http://www.google.com/patents/US8400455
Category:Curves
Category:Differential geometry
Category:Articles containing video clips