Polygonal chain
In geometry, a polygonal chain[a] is a connected series of line segments. More formally, a polygonal chain is a curve specified by a sequence of points called its vertices. The curve itself consists of the line segments connecting the consecutive vertices.
Variations
[edit]Simple
[edit]A simple polygonal chain is one in which only consecutive segments intersect and only at their endpoints.
Closed
[edit]A closed polygonal chain is one in which the first vertex coincides with the last one, or, alternatively, the first and the last vertices are also connected by a line segment.[1] A simple closed polygonal chain in the plane is the boundary of a simple polygon. Often the term "polygon" is used in the meaning of "closed polygonal chain", but in some cases it is important to draw a distinction between a polygonal area and a polygonal chain.
Monotone
[edit]A polygonal chain is called monotone if there is a straight line L such that every line perpendicular to L intersects the chain at most once. Every nontrivial monotone polygonal chain is open. In comparison, a monotone polygon is a polygon (a closed chain) that can be partitioned into exactly two monotone chains.[2] The graphs of piecewise linear functions form monotone chains with respect to a horizontal line.
Parametrization
[edit]Each segment of a polygonal chain is typically parametrized linearly, using linear interpolation between successive vertices. For the whole chain, two parametrizations are common in practical applications: Each segment of the chain can be assigned a unit interval of the parameter corresponding to the index of the first vertex; alternately, each segment of the chain can be assigned an interval of the parameter corresponding to the length of the segment, so that the parameter corresponds uniformly to arclength along the whole chain.
From point sets
[edit]Every set of at least points contains a polygonal path of at least edges in which all slopes have the same sign. This is a corollary of the Erdős–Szekeres theorem.
Applications
[edit]Polygonal chains can often be used to approximate more complex curves. In this context, the Ramer–Douglas–Peucker algorithm can be used to find a polygonal chain with few segments that serves as an accurate approximation.[3][4]
In graph drawing, polygonal chains are often used to represent the edges of graphs, in drawing styles where drawing the edges as straight line segments would cause crossings, edge-vertex collisions, or other undesired features. In this context, it is often desired to draw edges with as few segments and bends as possible, to reduce the visual clutter in the drawing; the problem of minimizing the number of bends is called bend minimization.[5]
In computer-aided geometric design, smooth curves are often defined by a list of control points, e.g. in defining Bézier curve segments. When connected together, the control points form a polygonal chain called a control polygon.
Polygonal chains are also a fundamental data type in computational geometry. For instance, a point location algorithm of Lee and Preparata operates by decomposing arbitrary planar subdivisions into an ordered sequence of monotone chains, in which a point location query problem may be solved by binary search; this method was later refined to give optimal time bounds for the point location problem.[6]
With geographic information system, linestrings may represent any linear geometry, and can be described using the well-known text markup as a LineString
or MultiLineString
.[7] Linear rings (or LinearRing
) are closed and simple polygonal chains used to build polygon geometries.
See also
[edit]- Chain (algebraic topology), a formal combination of simplices that in the 1-dimensional case includes polygonal chains
- Composite Bézier curve, a generalization that replaces each straight line of a polygonal chain with a smooth curve.
- Link distance, the number of segments of the shortest chain that links two points within a polygon
- Piecewise regression
- Path (graph theory), an analogous concept in abstract graphs
- Polyhedral terrain, a 3D generalization of a monotone polygonal chain
- Spirangle, a spiral polygonal chain
- Stick number, a knot invariant based on representing a knot as a closed polygonal chain
- Traverse, application in surveying
Notes
[edit]References
[edit]- ^ Mehlhorn, Kurt; Näher, Stefan (1999), LEDA: A Platform for Combinatorial and Geometric Computing, Cambridge University Press, p. 758, ISBN 9780521563291.
- ^ O'Rourke, Joseph (1998), Computational Geometry in C, Cambridge Tracts in Theoretical Computer Science, Cambridge University Press, p. 45, ISBN 9780521649766.
- ^ Ramer, Urs (1972), "An iterative procedure for the polygonal approximation of plane curves", Computer Graphics and Image Processing, 1 (3): 244–256, doi:10.1016/S0146-664X(72)80017-0.
- ^ Douglas, David; Peucker, Thomas (1973), "Algorithms for the reduction of the number of points required to represent a digitized line or its caricature", The Canadian Cartographer, 10 (2): 112–122, doi:10.3138/FM57-6770-U75U-7727.
- ^ Tamassia, Roberto (1987), "On embedding a graph in the grid with the minimum number of bends", SIAM Journal on Computing, 16 (3): 421–444, doi:10.1137/0216030.
- ^ Edelsbrunner, Herbert; Guibas, Leonidas J.; Stolfi, Jorge (1986), "Optimal point location in a monotone subdivision", SIAM Journal on Computing, 15 (2): 317–340, doi:10.1137/0215023.
- ^ a b Open Geospatial Consortium (2011-05-28), Herring, John R. (ed.), OpenGIS® Implementation Standard for Geographic information - Simple feature access - Part 1: Common architecture, 1.2.1, Open Geospatial Consortium, retrieved 2016-01-15
- ^ Gomes, Jonas; Velho, Luiz; Costa Sousa, Mario (2012), Computer Graphics: Theory and Practice, CRC Press, p. 186, ISBN 9781568815800.
- ^ Cheney, Ward (2001), Analysis for Applied Mathematics, Graduate Texts in Mathematics, vol. 208, Springer, p. 13, ISBN 9780387952796.
- ^ a b Boissonnat, Jean-Daniel; Teillaud, Monique (2006), Effective Computational Geometry for Curves and Surfaces, Springer, p. 34, ISBN 9783540332596.
- ^ Muggeo, Vito M. R. (May 2008), "segmented: An R package to fit regression models with broken-line relationships" (PDF), R News, 8 (1): 20–25