Questo è il comando v.net.isograss che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS
PROGRAMMA:
NOME
v.net.iso - Divide la rete per le isolinee di costo.
Divide la rete a bande tra le isolinee di costo (direzione dal centro). Il nodo centrale deve essere
aperto (costi >= 0). I costi del nodo centrale vengono utilizzati nel calcolo.
PAROLE CHIAVE
vettore, rete, isolines
SINOSSI
v.net.iso
v.net.iso --Aiuto
v.net.iso [-g] ingresso=Nome produzione=Nome [strato_arco=stringa] [tipo_arco=stringa[,stringa,...]]
[layer_nodo=stringa] [colonna_arco=Nome] [colonna_arco_indietro=Nome] [colonna_nodo=Nome]
centro_gatti=gamma costi=numero intero[,numero intero,...] [--sovrascrivere] [--Aiuto] [--verboso]
[--silenzioso] [--ui]
Bandiere:
-g
Usa il calcolo geodetico per le posizioni longitudine-latitudine
--sovrascrivi
Consenti ai file di output di sovrascrivere i file esistenti
--Aiuto
Riepilogo utilizzo stampa
--verboso
Uscita modulo dettagliata
--silenzioso
Uscita modulo silenzioso
--ui
Forza l'avvio della finestra di dialogo GUI
parametri:
ingresso=Nome [necessario]
Nome della mappa vettoriale di input
O fonte di dati per l'accesso diretto all'OGR
produzione=Nome [necessario]
Nome per la mappa vettoriale di output
strato_arco=stringa
Livello arco
Le feature vettoriali possono avere valori di categoria in diversi livelli. Questo numero determina
quale strato utilizzare. Se utilizzato con accesso OGR diretto, questo è il nome del livello.
Predefinito: 1
tipo_arco=stringa[,stringa,...]
Tipo di arco
Tipo di caratteristica di input
Opzioni: linea, confine
Predefinito: linea, confine
layer_nodo=stringa
Livello del nodo
Le feature vettoriali possono avere valori di categoria in diversi livelli. Questo numero determina
quale strato utilizzare. Se utilizzato con accesso OGR diretto, questo è il nome del livello.
Predefinito: 2
colonna_arco=Nome
Colonna costo arco avanti/entrambe le direzioni (numero)
colonna_arco_indietro=Nome
Colonna del costo della direzione all'indietro dell'arco (numero)
colonna_nodo=Nome
Colonna costo nodo (numero)
centro_gatti=gamma [necessario]
Valori di categoria
Categorie di centri (punti sui nodi) a cui verrà assegnata la rete, livello per questo
categorie è data dall'opzione nlayer
costi=intero[, intero,...] [necessario]
Costi per le isoline
DESCRIZIONE
v.net.iso divide una rete in bande tra isolinee di costo (distanza dal centro). Centro
i nodi devono essere aperti (costi >= 0). I costi dei nodi centrali vengono utilizzati nel calcolo.
I costi possono essere lunghezze di riga o attributi salvati in una tabella di database. Questi attributi
i valori sono presi come costi di interi segmenti, non come costi per attraversare un'unità di lunghezza (es
metro) del segmento. Ad esempio, se il limite di velocità è 100 km/h, il costo per
percorrere un tratto di strada lungo 10 km deve essere calcolato come
lunghezza / velocità = 10 km / (100 km/h) = 0.1 h.
Sono supportate le assegnazioni dei costi sia per gli archi che per i nodi e anche costi diversi per entrambi
direzioni di una linea vettoriale. Per le aree, i costi saranno calcolati lungo le linee di confine.
Il vettore di input deve essere preparato con v.net operazione=connetti per connetterti
punti che rappresentano i nodi centrali della rete.
NOTE
Nodi e archi possono essere chiusi usando cost = -1.
I nodi devono essere sulle isoline.
ESEMPI
La mappa deve contenere almeno un centro (punto) sulla rete vettoriale che può essere
patchato con v.net.
Isonetwork usando la distanza:
Isonetwork usando il tempo:
suddivisione of a Rete utilizzando distanza:
# pesce subacqueo
# nodo iniziale:
echo "591280.5|4926396.0|1" | v.in.ascii in=- out=startnode
g.copy vect=strade, myroads
# collega il punto alla rete
v.net myroads points=startnode out=myroads_net op=connect thresh=200
# definisci le reti iso usando la distanza:
v.net.iso input=myroads_net output=myroads_net_iso center_cats=1-100000 costi=1000,2000,5000
La rete è suddivisa in 4 categorie:
v.category myroads_net_iso opzione=report
# ... riporta 4 categorie:
#gatto | distanza dal punto in metri
#1 0 - < 1000
#2 1000 - < 2000
#3 2000 - < 5000
#4 >= 5000
Per visualizzare il risultato, eseguire ad esempio:
g.regione n=4928200 s=4922300 w=589200 e=596500
d.mon x0
d.vect myroads_net_iso col=blu gatti=1
d.vect myroads_net_iso col=gatti verdi=2
d.vect myroads_net_iso col=gatti arancioni=3
d.vect myroads_net_iso col=gatti magenta=4
d.vect myroads_net col=red icon=basic/triangolo fcol=green size=12 layer=2
suddivisione of a Rete utilizzando di viaggio tempo:
Preparare la rete come sopra:
# pesce subacqueo
# nodo iniziale:
echo "591280.5|4926396.0|1" | v.in.ascii in=- out=startnode
g.copy vect=strade, myroads
# collega il punto alla rete
v.net myroads points=startnode out=myroads_net op=connect thresh=200
Definisci i costi come tempo di viaggio dipendente dai limiti di velocità:
# costi di configurazione
# crea categorie uniche per ogni strada nel livello 3
v.category in=myroads_net out=myroads_net_time opt=aggiungi cat=1 layer=3 type=line
# aggiungi una nuova tabella per il livello 3
v.db.addtable myroads_net_time layer=3 col="cat integer,label varchar(43),lunghezza doppia precisione,velocità doppia precisione,costo doppia precisione,bcost doppia precisione"
# copia il tipo di strada nel livello 3
v.to.db myroads_net_time layer=3 qlayer=1 opt=query qcolumn=etichetta colonne=etichetta
# carica la lunghezza della strada in miglia
v.to.db myroads_net_time layer=3 type=line option=length col=length unit=miglia
# imposta i limiti di velocità in miglia/ora
v.db.update myroads_net_time layer=3 col=speed val="5.0"
v.db.update myroads_net_time layer=3 col=speed val="75.0" where="label='interstate'"
v.db.update myroads_net_time layer=3 col=speed val="75.0" where="label='autostrada primaria, superficie dura'"
v.db.update myroads_net_time layer=3 col=speed val="50.0" where="label='autostrada secondaria, superficie dura'"
v.db.update myroads_net_time layer=3 col=speed val="25.0" where="label='strada leggera, superficie migliorata'"
v.db.update myroads_net_time layer=3 col=speed val="5.0" where="label='strada non migliorata'"
# definisci i costi di viaggio come il tempo di viaggio in minuti:
# imposta i costi a termine
v.db.update myroads_net_time layer=3 col=cost val="length/speed * 60"
# imposta i costi arretrati
v.db.update myroads_net_time layer=3 col=bcost val="lunghezza/velocità * 60"
# definisci le reti iso usando il tempo di percorrenza:
v.net.iso input=myroads_net_time output=myroads_net_iso_time arc_layer=3 node_layer=2 arc_column=costo arc_backward_column=bcost center_cats=1-100000 costi=1,2,5
Per visualizzare il risultato, eseguire ad esempio:
# aggiungi tabella con etichette e coloranti
v.db.addtable myroads_net_iso_time columns="cat integer,trav_time varchar(20),ERBAGB varchar(11) "
# etichette
v.db.update map=myroads_net_iso_time layer=1 colonna=trav_time value="0 - 1" dove="cat = 1"
v.db.update map=myroads_net_iso_time layer=1 colonna=trav_time value="1 - 2" dove="cat = 2"
v.db.update map=myroads_net_iso_time layer=1 colonna=trav_time value="2 - 5" dove="cat = 3"
v.db.update map=myroads_net_iso_time layer=1 colonna=trav_time value="> 5" dove="cat = 4"
# colori
# gatti=1: blu
v.db.update map=myroads_net_iso_time layer=1 colonna=GRASSRGB value="000:000:255" dove="cat = 1"
# gatti=2: verde
v.db.update map=myroads_net_iso_time layer=1 colonna=GRASSRGB value="000:255:000" dove="cat = 2"
# gatti=3: arancione
v.db.update map=myroads_net_iso_time layer=1 colonna=GRASSRGB value="255:128:000" dove="cat = 3"
# gatti=4: magenta
v.db.update map=myroads_net_iso_time layer=1 colonna=GRASSRGB value="255:000:255" dove="cat = 4"
# mostra i risultati
g.regione n=4928200 s=4922300 w=589200 e=596500
d.mon x0
d.vect myroads_net_iso_time layer=1 -a rgb_col=GRASSRGB
d.vect myroads_net col=red icon=basic/triangolo fcol=green size=12 layer=2
Usa v.net.isograss online utilizzando i servizi onworks.net