v.build.polylines - Builds polylines from lines or boundaries.
vector, geometry, topology
v.build.polylines [-q] input=name output=name [cats=string] [--overwrite] [--verbose] [--quiet]
- Allow output files to overwrite existing files
- Verbose module output
- Quiet module output
- Name of input vector map
- Name for output vector map
- Category number mode
- Options: no,first,multi
- Default: no
- no: Do not assign any category number to polyline
- first: Assign category number of first line to polyline
- multi: Assign multiple category numbers to polyline
v.build.polylines builds polylines from the lines or
boundaries in a vector map.
A line is a single straight line segment defined by one start node, one end
node and no other nodes. A polyline is also defined by one start node, one end
node and no other nodes, but is made of two or more consecutive straight line
segments. The connections between the constituent line segments of a polyline
do not appear as nodes in the vector map.
v.build.polyline picks a line and from its start node, walks
back as long as exactly one other line is connected to this node. Line
directions are reversed as required, i.e. it does not matter if the
next line is connected to the current node by its start or end
node. Once the start line of a polyline is identified, it walks
forward and adds all vertices (in reverse order if needed) of
connected lines to the start line, i.e. the start line and connecting
lines are reversed as needed. That is, if a line is reversed depends
on what node is initially picked for building polylines. If the
direction of lines is important (it's not for boundaries to build
areas), you have to manually change line directions with
either v.edit, v.digit,
or the wxGUI vector
Polylines provide the most appropriate representation of curved lines when it
is important that nodes serve to define topology rather than geometry. Curved
lines are usually digitized as polylines, but these are sometimes broken into
their constituent straight line segments during conversion from one data
format to another. v.build.polylines can be used to rebuild such broken
If the lines that make up a polyline are of different types, then
v.build.polylines will set the type from the first constituent line.
Category number(s) are assigned to a polyline based on cats parameter.
cats=no - No category number is assigned to a
polyline. Also attributes tables linked to the input vector map are
not copied to the output vector map.
cats=first - Assign to a polyline category number of the
first line. All linked attributes tables are copied to the output
cats=multi - If the lines that make up a polyline have
different category numbers then v.build.polylines will
set the multiple catetory numbers to a polyline. Also all linked
attributes tables are copied to the output vector map.
v.build.polylines correctly handles input vector maps
containing lines, boundaries, centroids and points. Lines and
boundaries will be converted to polylines of the desired type. Areas
are only guaranteed to be preserved if the constituent lines of the
polylines that define them are all boundaries in the input vector map.
This program was originally written during Mark Lake's tenure of a
Leverhulme Special Research Fellowship at University College London.
Mark Lake, Institute of Archaeology, University College London.
Major rewrite by Radim Blazek, October 2002
Category mode added by Martin Landa, FBK-irst, Trento, Italy, October 2007
Last changed: $Date: 2011-12-11 12:06:55 -0800 (Sun, 11 Dec 2011) $
Main index - vector index - Full index
© 2003-2012 GRASS Development Team