Questa esercitazione riguarda la combinazione di primitive vettoriali di tipo area e punti. Le operazioni effettuate sono:
Si vogliono prima selezionare i punti di interesse archeologico nella Black Hills Natl. Forest, poi i punti di interesse archeologico al di fuori della Black Hills Natl. Forest. Infine si calcolerà la distanza dell'unico punto di interesse archeologico in un terreno ma al di fuori della Black Hills Natl. Forest dalla foresta stessa e si realizzerà una mappa vettoriale contenente il segmento di minima distanza fra questo punto e la foresta.
Si imposta la regione su quella di default con> g.region -d
e si visualizzano i terreni> d.erase
tutti i terreni in nero> d.vect map=fields type=area,face display=shape icon=basic/x size=8 layer=1 color=black fcolor=gray
la Black Hills Natl. Forest con contorno rosso> d.vect map=fields@PERMANENT color=255:0:0 lcolor=0:0:0 fcolor=none display=shape type=point,line,boundary,centroid,area where="label='Black Hills Natl. Forest'" icon=basic/x size=5 layer=1 lsize=8 xref=left yref=center llayer=1
i siti archeologici in verde> d.vect archsites color=green
> v.extract input=fields@PERMANENT output=fields_natfor type=point,line,boundary,centroid,area,face layer=1 new=-1 where="label='Black Hills Natl. Forest'" --overwrite
e si rivisualizza, senza cancellare il display: in questo modo rimangono visualizzati gli altri terreni in grigio> d.vect map=fields_natfor color=blue fcolor=yellow
> d.vect archsites color=red
> v.select ainput=archsites@PERMANENT atype=point,line,boundary,centroid,area alayer=1 binput=fields_natfor btype=point,line,boundary,centroid,area blayer=1 output=archsites_natfor operator=overlap --overwrite
e si rivisualizza, cancellando prima il display:> d.erase
> d.vect map=fields_natfor color=blue
> d.vect map=archsites_natfor color=red
> v.in.region output=fields_region type=area --overwrite
> v.overlay ainput=fields_region atype=area alayer=1 binput=fields_natfor btype=area blayer=1 output=fields_region_not_natfor operator=not olayer=1,0,0 --overwrite
e si visualizzano le nuove aree, cancellando prima il display:> d.erase
> d.vect map=fields_region_not_natfor color=blue
> v.select ainput=archsites@PERMANENT atype=point,line,boundary,centroid,area alayer=1 binput=fields_region_not_natfor btype=point,line,boundary,centroid,area blayer=1 output=archsites_not_natfor operator=overlap --overwrite
e si visualizza il risultato:> d.erase
> d.vect map=fields_natfor display=shape,attr color=blue att=label lcolor=blue
> d.vect map=archsites_not_natfor color=red
> v.extract input=fields@PERMANENT output=fields_not_natfor type=point,line,boundary,centroid,area,face layer=1 new=-1 where="label<>'Black Hills Natl. Forest'" --overwrite
e si visualizza la nuova mappa> d.erase
> d.vect map=fields_not_natfor display=shape color=blue fcolor=yellow
> d.vect archsites color=red
> v.select ainput=archsites@PERMANENT atype=point,line,boundary,centroid,area alayer=1 binput=fields_not_natfor btype=point,line,boundary,centroid,area blayer=1 output=archsites_not_natfor_fields operator=overlap --overwrite
e si visualizza> d.erase
> d.vect map=fields_natfor color=green fcolor=none
> d.vect map=fields_not_natfor color=blue fcolor=none
> d.vect map=archsites_not_natfor_fields color=red
> v.distance from=archsites_not_natfor_fields to=archsites_natfor from_type=point to_type=point,line,area from_layer=1 to_layer=1 dmax=-1 upload=dist column=dist -p
che visualizza sul terminale:from_cat|dist
9|7968.853431
Statistics:
0 categories with more than 1 feature in 'from'
0 categories - no nearest feature found
> v.distance from=archsites_not_natfor_fields to=archsites_natfor from_type=point to_type=point,line,area from_layer=1 to_layer=1 output=archsites_not_natfor_dist dmax=-1 upload=dist column=dist -p --overwrite
lasciando l'opzione -p la distanza è ancora visualizzata sul terminale. Si visualizza il risultato con:> d.erase
> d.vect map=fields_natfor color=blue
> d.vect map=archsites_not_natfor_fields color=red
> d.vect map=archsites_not_natfor_dist color=yellow
Lo script che realizza queste operazioni è geoprocessing_spearfish_aree_punti.sh.