Convert points to lines: Difference between revisions
Jump to navigation
Jump to search
m (prettify) |
(+Converting CSV points file into lines map) |
||
Line 1: | Line 1: | ||
'''Q:''' Is there a way to construct a vector line(s) map connecting selected points? | '''Q:''' Is there a way to construct a vector line(s) map connecting selected points? | ||
'''A:''' You can use {{cmd|v.in.lines|version=65}} for that. The input can be generated with {{cmd|v.out.ascii}}. | '''A:''' There are two possibilities: | ||
=== Converting points map into lines map === | |||
You can use {{cmd|v.in.lines|version=65}} for that. The input can be generated with {{cmd|v.out.ascii}}. | |||
Spearfish example: | Spearfish example: | ||
Line 15: | Line 19: | ||
</source> | </source> | ||
=== Converting CSV points file into lines map === | |||
Suppose you have a CSV file "mypoints.csv" containing three point-pairs to be connected (start point coordinates, end point coordinates): | |||
east1,north1,east2,north2 | |||
593493,4914730,589860,4922000 | |||
590400,4922820,593549,4925500 | |||
600375,4925235,606635,4920773 | |||
We can convert these three point pairs into three lines: | |||
<source lang="bash"> | |||
cat mypoints.csv | grep -v "north1" | awk -F',' '{printf "%f,%f\n%f,%f\nNaN,NaN\n",$1, $2 ,$3 ,$4}' > mypoints_formatted.csv | |||
v.in.lines in=mypoints_formatted.csv out=mylines fs=, | |||
v.category in=mylines out=lines_with_cat option=add | |||
</source> | |||
[[Category: FAQ]] | [[Category: FAQ]] |
Revision as of 10:24, 13 December 2010
Q: Is there a way to construct a vector line(s) map connecting selected points?
A: There are two possibilities:
Converting points map into lines map
You can use v.in.lines for that. The input can be generated with v.out.ascii.
Spearfish example:
v.out.ascii archsites fs=, where="cat=1 or cat= 3"
593493,4914730,1
589860,4922000,3
# so:
v.out.ascii archsites fs=, where="cat=1 or cat= 3" | cut -d',' -f1,2 | \
v.in.lines in=- out=myline fs=,
v.category in=myline out=line_with_cat option=add
Converting CSV points file into lines map
Suppose you have a CSV file "mypoints.csv" containing three point-pairs to be connected (start point coordinates, end point coordinates):
east1,north1,east2,north2 593493,4914730,589860,4922000 590400,4922820,593549,4925500 600375,4925235,606635,4920773
We can convert these three point pairs into three lines:
cat mypoints.csv | grep -v "north1" | awk -F',' '{printf "%f,%f\n%f,%f\nNaN,NaN\n",$1, $2 ,$3 ,$4}' > mypoints_formatted.csv
v.in.lines in=mypoints_formatted.csv out=mylines fs=,
v.category in=mylines out=lines_with_cat option=add