Parallel curve: Difference between revisions

Content deleted Content added
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
updating some cites
Line 19:
In [[computer-aided design]] the preferred term for a parallel curve is '''offset curve'''.<ref name="DevadossO'Rourke2011"/><ref name="SendraWinkler2007"/><ref name="Agoston2005m">{{cite book|first=Max K.|last= Agoston|title=Computer Graphics and Geometric Modelling: Mathematics|url=https://books.google.com/books?id=LPsAM-xuGG8C&pg=PA586|year=2005|publisher=Springer Science & Business Media|isbn=978-1-85233-817-6|page=586}}</ref> (In other geometric contexts, [[offset (disambiguation)|the term offset]] can also refer to [[Translation (geometry)|translation]].<ref name="Vince2006">{{cite book|first=John|last=Vince|title=Geometry for Computer Graphics: Formulae, Examples and Proofs|url=https://books.google.com/books?id=VkzklwKLv7UC&pg=PA293|year=2006|publisher=Springer Science & Business Media|isbn=978-1-84628-116-7|page=293}}</ref>) Offset curves are important for example in [[numerically controlled]] [[machining]], where they describe for example the shape of the cut made by a round cutting tool of a two-axis machine. The shape of the cut is offset from the trajectory of the cutter by a constant distance in the direction normal to the cutter trajectory at every point.<ref name="Marsh2006">{{cite book|first=Duncan|last=Marsh|title=Applied Geometry for Computer Graphics and CAD|url=https://books.google.com/books?id=5wHxT5W424QC&pg=PA107|year=2006|publisher=Springer Science & Business Media|isbn=978-1-84628-109-9|page=107|edition=2nd}}</ref>
 
In the area of 2D [[computer graphics]] known as [[vector graphics]], the (approximate) computation of parallel curves is involved in one of the fundamental drawing operations, called stroking, which is typically applied to [[polyline]]s or [[polybezier]]s (themselves called paths) in that field.<ref name="Kilgard">http{{cite web |author=Mark Kilgard | title=CS 354 Vector Graphics & Path Rendering | website=www.slideshare.net | date=2012-04-10 | url=https://www.slideshare.net/Mark_Kilgard/22pathrender, p. |page=28}}</ref>
 
Except in the case of a line or [[circle]], the parallel curves have a more complicated mathematical structure than the progenitor curve.<ref name="Willson"/> For example, even if the progenitor curve is [[Smooth function|smooth]], its offsets may not be so; this property is illustrated in the top figure, using a [[sine curve]] as progenitor curve.<ref name="DevadossO'Rourke2011"/> In general, even if a curve is [[rational curve|rational]], its offsets may not be so. For example, the offsets of a parabola are rational curves, but the offsets of an [[ellipse]] or of a [[hyperbola]] are not rational, even though these progenitor curves themselves are rational.<ref name="SendraWinkler2007">{{cite book|first1=J. Rafael |last1=Sendra|first2=Franz|last2= Winkler|first3=Sonia |last3=Pérez Díaz|title=Rational Algebraic Curves: A Computer Algebra Approach|url=https://books.google.com/books?id=puWxs7KG2D0C&pg=PA10|year=2007|publisher=Springer Science & Business Media|isbn=978-3-540-73724-7|page=10}}</ref>
Line 57:
* The parallel curve for distance d is the [[level set]] <math>h(x,y)=d</math> of the corresponding oriented distance function <math>h</math>.
 
===Properties of the distance function:<ref name="hart30" /><ref>J.{{cite book | last=Thorpe | first=John A. Thorpe:| ''title=Elementary topicsTopics in Differential Geometry'', | publisher=Springer Science & Business Media | publication-Verlag,place=New 1979,York Heidelberg {{ISBN| date=1994-10-27 | isbn=0-387-90357-7 | page=}}.</ref>===
*<math>| \operatorname{grad} h (\vec x)|=1 \; ,</math>
* <math> h(\vec x+d\operatorname{grad} h (\vec x)) = h(\vec x)+d \; ,</math>
Line 105:
 
Another efficient algorithm for offsetting is the level approach described by
[[Ron Kimmel|Kimmel]] and Bruckstein (1993).<ref>{{cite journal | last1=Kimmel | first1=R. | last2=Bruckstein | first2=A.M. | title=Shape offsets via level sets | journal=Computer-Aided Design | publisher=Elsevier BV | volume=25 | issue=3 | year=1993 | issn=0010-4485 | doi=10.1016/0010-4485(93)90040-u | pages=154–162 | s2cid=8434463 |url=https://www.cs.technion.ac.il/~ron/PAPERS/offsets_cad1993.pdf}}</ref>
[[Ron Kimmel|Kimmel]] and Bruckstein (1993).<ref>Kimmel and Bruckstein (1993)
[https://www.cs.technion.ac.il/~ron/PAPERS/offsets_cad1993.pdf ''Shape offsets via level sets'' ]
CAD (Computer Aided Design)
25(3):154&ndash;162.
</ref>
 
== Parallel (offset) surfaces ==