v.to.points

Langue: en

Autres versions - même langue

Version: 148707 (fedora - 04/07/09)

Section: 1 (Commandes utilisateur)

NAME

v.to.points - Create points along input lines in new vector with 2 layers.

KEYWORDS

vector, geometry

SYNOPSIS

v.to.points
v.to.points help
v.to.points [-nvit] input=name output=name [type=string[,string,...]] [llayer=integer] [dmax=float] [--overwrite] [--verbose] [--quiet]

Flags:

-n

Write line nodes
-v

Write line vertices
-i

Interpolate points between line vertices
-t

Do not create attribute table
--overwrite

Allow output files to overwrite existing files
--verbose

Verbose module output
--quiet

Quiet module output

Parameters:

input=name

Input vector map containing lines
output=name

Output vector map where points will be written
type=string[,string,...]

Type
Feature type(s)
Options: point,line,boundary,centroid,area
Default: point,line,boundary,centroid
llayer=integer

Layer number
Line layer
Default: 1
dmax=float

Maximum distance between points in map units
Default: 100

DESCRIPTION

v.to.points creates points along input lines. The output is a vector with 2 layers. Layer 1 holds the category and attributes of the input lines; all points created along the same line have the same category, equal to the category of that line. In layer 2 each point has it's unique category; other attributes stored in layer 2 are lcat - the category of the input line and along - the distance from line's start.

NOTES

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.

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. The original category numbers of the input points/centroids get written to the 'lcat' attribute in layer 2 of the output vector. All values for along are zero in the output vector, 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 paramter 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 -v flag is used to digitize points that fall on the line's vertices only. dmax is ignored in this case.

If the -i flag is used in conjunction with the -v flag, 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.

To get points created for the beginning, middle and end only, use the -i switch and set dmax so that:

(length of input line / 2) <= dmax <= length of input line

So 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.

EXAMPLE

In this example, the 't_powerlines' vector lines map in the Spearfish 6 location is used to create points along the input lines:
v.to.points in=t_powerlines out=t_powerlines_points dmax=120
d.vect t_powerlines_points

SEE ALSO

v.segment, v.to.rast, v.to.db

AUTHOR

Radim Blazek

Last changed: $Date: 2006-09-28 14:19:12 +0200 (Thu, 28 Sep 2006) $

Full index

Š 2003-2008 GRASS Development Team