GoGPT Best VPN GoSearch

Icône de favori OnWorks

v.net.steinergrass - En ligne dans le Cloud

Exécutez v.net.steinergrass dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande v.net.steinergrass qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


v.net.steiner - Crée l'arbre de Steiner pour le réseau et les terminaux donnés.
Notez que le problème 'Minimum Steiner Tree' est NP-difficile et qu'un algorithme heuristique est utilisé dans
ce module donc le résultat peut être sous-optimal.

MOTS-CLÉS


vecteur, réseau, arbre steiner

SYNOPSIS


v.net.steiner
v.net.steiner --Aidez-moi
v.net.steiner [-g] contribution=prénom sortie=prénom [type_arc=un magnifique[,un magnifique,...]]
[arc_couche=un magnifique] [couche_nœud=un magnifique] [une colonne=un magnifique] terminal_chats=gamme
[npoints=entier] [--écraser] [--vous aider] [--verbeux] [--calme] [--ui]

Drapeaux:
-g
Utiliser le calcul géodésique pour les emplacements longitude-latitude

--écraser
Autoriser les fichiers de sortie à écraser les fichiers existants

--Aidez-moi
Imprimer le récapitulatif d'utilisation

--verbeux
Sortie du module verbeux

--silencieux
Sortie module silencieuse

--interface utilisateur
Forcer le lancement de la boîte de dialogue GUI

Paramètres:
contribution=prénom [obligatoire]
Nom de la carte vectorielle d'entrée
Ou source de données pour un accès OGR direct

sortie=prénom [obligatoire]
Nom de la carte vectorielle de sortie

type_arc=chaîne[,chaîne,...]
Type d'arc
Type d'entité en entrée
Options : ligne, limite
Valeur par défaut: ligne, frontière

arc_couche=un magnifique
Couche d'arc
Les entités vectorielles peuvent avoir des valeurs de catégorie dans différentes couches. Ce nombre détermine
quelle couche utiliser. Lorsqu'il est utilisé avec un accès OGR direct, il s'agit du nom de la couche.
Valeur par défaut: 1

couche_nœud=un magnifique
Couche de nœud (utilisée pour les terminaux)
Les entités vectorielles peuvent avoir des valeurs de catégorie dans différentes couches. Ce nombre détermine
quelle couche utiliser. Lorsqu'il est utilisé avec un accès OGR direct, il s'agit du nom de la couche.
Valeur par défaut: 2

une colonne=un magnifique
Colonne de coût des arcs (pour les deux sens)

terminal_chats=gamme [obligatoire]
Valeurs de catégorie
Catégories de points sur les terminaux (la couche est spécifiée par nlayer)

npoints=entier
Nombre de points Steiner (-1 pour tous les possibles)
Valeur par défaut: -1

DESCRIPTION


v.net.steiner calcule la connexion optimale des nœuds sur un réseau vectoriel.

Un arbre de Steiner est utilisé pour calculer le réseau vectoriel à coût minimum reliant un certain nombre
de nœuds d'extrémité dans un cadre de réseau. Par exemple, il pourrait être utilisé pour trouver le chemin
suivant un réseau routier qui minimisera la quantité de câble à fibre optique nécessaire pour
connecter une série de bureaux satellites.

Les coûts peuvent être soit des longueurs de ligne, soit des attributs enregistrés dans une table de base de données. Ces attributs
les valeurs sont considérées comme des coûts de segments entiers, et non comme des coûts pour traverser une unité de longueur (par exemple
mètre) du segment. Par exemple, si la limite de vitesse est de 100 km/h, le coût pour
traverser un segment de route de 10 km de long doit être calculé comme longueur / vitesse = 10 km / (100
km/h) = 0.1 h. Les affectations de coûts pour les arcs et les nœuds sont prises en charge. Pour les zones, les coûts
sera calculé le long des lignes de démarcation.

Les points représentant les nœuds doivent être exactement sur les nœuds du réseau, et la carte vectorielle d'entrée a besoin
être préparé avec v net opération=connexion.

EXEMPLE


Arbre de Steiner pour 6 nœuds numérisés (Spearfish) :

Chemin le plus court, le long de routes non aménagées :

Chemin le plus rapide, le long des autoroutes :

# Spearfish
g.copy vect=routes,mesroutes
# nous avons 6 emplacements à attribuer
echo "1|601653.5|4922869.2|a
2|608284|4923776.6|b
3|601845|4914981.9|c
4|596270|4917456.3|d
5|593330.8|4924096.6|f
6|598005.5|4921439.2|f" | v.in.ascii in=- cat=1 x=2 y=3 out=centers col="cat integer, \
double précision est, double précision nord, étiquette varchar(43)"
v.db.select centres
v.category centres op=report
# type nombre min max
#point 6 1 6
# créer une carte de lignes reliant les points au réseau (sur la couche 2)
v.net myroads points=centers out=myroads_net op=connect thresh=500
# configurer les coûts comme temps de trajet
# créer des catégories uniques pour chaque route dans la couche 3
v.category in=myroads_net out=myroads_net_time opt=add cat=1 layer=3 type=line
# ajouter une nouvelle table pour la couche 3
v.db.addtable myroads_net_time layer=3 col="cat entier, étiquette varchar(43), longueur double précision, vitesse double précision, coût double précision"
# copier le type de route dans la couche 3
v.to.db myroads_net_time layer=3 qlayer=1 opt=query qcolumn=label colonnes=étiquette
# télécharger la longueur de la route en miles
v.to.db myroads_net_time layer=3 type=line option=longueur col=longueur unité=miles
# définir les limites de vitesse en miles / heure
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='autoroute principale, surface dure'"
v.db.update myroads_net_time layer=3 col=speed val="50.0" where="label='autoroute secondaire, surface dure'"
v.db.update myroads_net_time layer=3 col=speed val="25.0" where="label='route légère, surface améliorée'"
v.db.update myroads_net_time layer=3 col=speed val="5.0" where="label='unimproved road'"
# définir les frais de déplacement comme le temps de déplacement en minutes :
v.db.update myroads_net_time layer=3 col=cost val="longueur/vitesse * 60"
# le plus court chemin
v.net.steiner myroads_net_time arc_layer=3 node_layer=2 terminal_cats=1-6 out=mysteiner_distance
# chemin le plus rapide
v.net.steiner myroads_net_time arc_layer=3 node_layer=2 acol=cost terminal_cats=1-6 out=mysteiner_time
Pour afficher le résultat, exécutez par exemple :
# afficher les résultats
g.region vecteur=myroads_net
# le plus court chemin
j.lun x0
d.vect mesroutes_net
d.vect -c centres icon=basic/triangle
d.font Vera
d.vect center col=red disp=attr attrcol=label lsize=12
d.vect mysteiner_distance col=bleu largeur=2
# chemin le plus rapide
j.lun x1
d.vect mesroutes_net
d.vect -c centres icon=basic/triangle
d.font Vera
d.vect center col=red disp=attr attrcol=label lsize=12
d.vect mysteiner_time col=bleu largeur=2

Utilisez v.net.steinergrass en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad




×
Publicité
❤ ️Achetez, réservez ou achetez ici — gratuitement, contribue à maintenir la gratuité des services.