v.to.points - Creates points along input lines in new vector map
with 2 layers.
vector, geometry, 3D, line, node, vertex, point
v.to.points
v.to.points --help
v.to.points [-
iprt]
input=
name
[
layer=
string] [
type=
string[,
string,...]]
output=
name [
use=
string]
[
dmax=
float] [--
overwrite] [--
help]
[--
verbose] [--
quiet] [--
ui]
- -i
-
Interpolate points between line vertices (only for use=vertex)
- -p
-
Use dmax as percentage of line length
- -r
-
Start from the end node
- -t
-
Do not create attribute table
- --overwrite
-
Allow output files to overwrite existing files
- --help
-
Print usage summary
- --verbose
-
Verbose module output
- --quiet
-
Quiet module output
- --ui
-
Force launching GUI dialog
- input=name [required]
-
Name of input vector map
Or data source for direct OGR access
- layer=string
-
Line layer number or name
Vector features can have category values in different layers. This number
determines which layer to use. When used with direct OGR access this is
the layer name.
Default: 1
- type=string[,string,...]
-
Input feature type
Options: point, line, boundary, centroid, area, face, kernel
Default: point,line,boundary,centroid,face
- output=name [required]
-
Name for output vector map
- use=string
-
Use line nodes or vertices only
Options: node, vertex
- dmax=float
-
Maximum distance between points in map units or percentage with -p
Default: 100
v.to.points creates points along input 2D or 3D lines, boundaries and
faces. Point features including centroids and kernels are copied from input
vector map to the output. For details see notes about
type parameter.
The output is a vector map with 2 layers. Layer 1 holds the category of the
input features; all points created along the same line have the same category,
equal to the category of that line. In layer 2 each point has its unique
category; other attributes stored in layer 2 are
lcat - the category of
the input line and
along - the distance from line’s start.
By default only features with category are processed, see
layer parameter
for details.
The
dmax parameter is the maximum limit but not an exact distance. To
place points with exact distance from the beginning of the vector line the
user should use
v.segment.
Set
layer to -1 to process features from all layers including features
without category. Features will be assigned new unique categories at layer 1.
Option
layer=-1 should be used to convert boundaries, as in most of
cases boundaries lack category values.
The
type parameter is used to control which input vector geometry types
to convert into points. Some caveats to consider about this parameter:
- •
- Points and centroids can be considered as "lines" with only one
node. Consequently, the result of selecting point or
centroid as the type parameter is that all points/centroids get
written into the output vector map. The original category numbers of the
input points/centroids get written to the ’ lcat’
attribute in layer 2 of the output vector map. All values for along
are zero in the output vector map, as only point geometry was used for
input (there is no linear distance to calculate along, as each
point/centroid is the start and end of its own
"line").
- •
- Boundaries are treated as lines, with points getting interpolated along
the boundary perimeter according to dmax. If two adjoining polygons
share a topological boundary, the boundary only gets converted to points
once.
- •
- If the type parameter is set to area, the boundary of each
area is converted to points regardless of whether or not there is a
topological boundary between adjacent areas. In other words, the common
boundary of two adjoining areas, for example, gets converted to points
twice. The centroid is not converted to a point in the output vector for
type=area.
The
use=vertex option is used to digitize points that fall on the
line’s vertices
only. Parameter
dmax is ignored in this
case. Similarly to
use=node when only line’s node are used.
If the
-i flag is used in conjunction with the
use=vertex option,
v.to.points will digitize points on the line vertices, as well as
interpolate points between line vertices using
dmax as the maximum
allowable spacing.
Use the
-p flag to treat
dmax as a percentage of each line length.
For example, to get points created for the beginning, middle and end only, use
the
-p flag and set
dmax so that:
50 < dmax <= 100
Hence, if
dmax is between 0.5x and 1.0x the line length, you will always
get points created at exactly the beginning, middle and end of the input line.
Use the
-r flag to create points starting from the end node.
In this example, the ’railroads’ vector lines map of the North
Carolina sample dataset is used to create points along the input lines:
# The North Carolina data are metric.
# 200m distance for nodes (maximum limit but not an exact distance)
v.to.points railroads output=railroads_nodes use=node dmax=200
# verify the two layers in the resulting map
v.category railroads_nodes option=report
# vector info
v.info railroads_nodes
v.segment, v.split, v.to.rast, v.to.db
Radim Blazek
Updated to GRASS 7 by Martin Landa, Czech Technical University in Prague, Czech
Republic
Last changed: $Date: 2017-02-16 06:09:41 +0100 (Thu, 16 Feb 2017) $
Available at: v.to.points source code (history)
Main index | Vector index | Topics index | Keywords index | Graphical index |
Full index
© 2003-2018 GRASS Development Team, GRASS GIS 7.4.3 Reference
Manual