Il formato è:
P <id del punto> <cat della linea> <scostamento (offset)> [<scostamento laterale>] L <id del segmento> <cat della linea> <scostamento iniziale> <scostamento finale> [<scostamento laterale>]
P 1 356 24.56 P 2 495 12.31 ...
I punti vengono generati lungo le linee alla distanza stabilita partendo dall'inizio della linea vettoriale.
Lo scostamento laterale è la distanza ortogonale dalla linea. Gli scostamenti laterali positivi sono sul lato destro della linea rispetto al senso della direzione, gli scostamenti negativi sono sulla sinistra (d.vect con display=shape,dir mostra la direzione delle linee vettoriali). Siccome la distanza del segmento è misurata lungo la linea originale, le linee che hanno uno scostamento laterale saranno più lunghe del segmento per gli angoli esterni delle linee curve, e più corti per gli angoli interni.
Tutti gli scostamenti sono misurati in unità di mappa (si veda "g.proj -p").
Per mettere un punto nel mezzo di una linea si può utilizzare il modulo v.to.db per trovare la lunghezza della linea. La metà di questa distanza può quindi essere usata come scostamento lungo la linea.
# estrae linee da una mappa ferroviaria v.extract railroads out=myrr list=1 # congiunge segmenti per formare polilinee e riassegna i numeri di categoria v.build.polylines myrr out=myrr_pol v.category myrr_pol out=myrailroads option=add # fa un'inquadratura sull'area di interesse g.region n=4928200 s=4921100 w=605600 e=613200 # mostra linea, categoria, direzione (per trovare l'inizio) d.vect myrailroads disp=shape,cat,dir lsize=12 # estrae un segmento di linea da 400 m a 5000 m dall'inizio della linea 1 echo "L 1 1 400 5000" | v.segment myrailroads out=myrailroads_segl d.erase d.vect myrailroads d.vect myrailroads_segl col=green width=2 # posiziona un nodo a 5000 m dall'inizio della linea 1 echo "P 1 1 5000" | v.segment myrailroads out=myrailroads_segp d.vect myrailroads_segp icon=basic/circle color=red fcolor=red size=5 # inserisce punti da un file di testo cat mypoints.txt | v.segment myrailroads out=myrailroads_mypoints # crea un segmento di linea lungo 1 km lungo i primi 8 km di rotaia, # (con uno) scostamento di 500 m a sinistra dei binari. v.segment myrailroads out=myrailroads_segl_side << EOF L 1 1 1000 2000 -500 L 2 1 3000 4000 -500 L 3 1 5000 6000 -500 L 4 1 7000 8000 -500 EOF d.erase d.vect myrailroads disp=shape,dir d.vect -c myrailroads_segl_side width=2 # Una serie di punti, disposti lungo i binari ogni 2 km v.segment myrailroads out=myrailroads_pt2km << EOF P 1 1 1000 P 2 1 3000 P 3 1 5000 P 4 1 7000 EOF d.vect myrailroads_pt2km icon=basic/circle color=blue fcolor=blue size=5 # Una serie di punti, disposti lungo i binari ogni 2 km, scostamento di 500 m sulla destra v.segment myrailroads out=myrailroads_pt2kmO500m << EOF P 1 1 1000 500 P 2 1 3000 500 P 3 1 5000 500 P 4 1 7000 500 EOF d.vect myrailroads_pt2kmO500m icon=basic/circle color=aqua fcolor=aqua size=5
Last changed: $Date: 2011-11-08 12:29:50 +0100(mar, 08 nov 2011) $
Main index - vector index - Full index
© 2003-2011 GRASS Development Team