pgRouting Manual (2.0.0)

pgr_drivingDistance

«  With Driving Distance Enabled   ::   Contenu   ::   pgr_alphaShape  »

pgr_drivingDistance

Nom

pgr_drivingDistance - Retourne la distance de conduite à partir d’un point de départ.

Note

Requiert to build pgRouting avec support de la Distance de conduite.

Synopsis

Cette fonction calcule une solution de plus court chemin Dijkstra qui extracte le coût pour atteindre chaque noeud dans le réseau à partir du nœud de départ. En utilisand ces noeuds et coûts, il est possible de calculer des polygones de temps de conduite. Retourne un ensemble de lignes pgr_costResult (seq, id1, id2, cost), qui génèrent une liste de points accessibles.

pgr_costResult[] pgr_drivingDistance(text sql, integer source, double precision distance,
                              boolean directed, boolean has_rcost);

Description

sql:

une requête SQL, qui devrait retourner un ensemble de lignes avec les colonnes suivantes :

SELECT id, source, target, cost [,reverse_cost] FROM edge_table
id:int4 identifiant de l’arête
source:int4 identifiant du sommet source
target:int4 identifiant du sommet cible
cost:float8 valeur, du coût de l’arête traversée. Un coût négatif va prévenir l’arête d’être insérée dans le graphe.
reverse_cost:(optionnel) le coût pour la traversée inverse de l’arête. Ceci est seulement utilisé quand les paramètres directed et has_rcost sont true (voir la remarque ci-dessus sur les coûts négatifs).
source:

int4 id du point de départ

distance:

float8 valeur dans les unités de coûts de l’arête (pas forcément dans les unités de projection - ils peuvent être différents).

directed:

true si le graphe est dirigé

has_rcost:

si true, la colonne reverse_cost du SQL générant l’ensemble des lignes va être utilisé pour le coût de la traversée de l’arête dans la direction opposée.

Retourne un ensemble de pgr_costResult[]:

seq:séquence de ligne
id1:ID noeud
id2:ID arête (probablement pas un élément utile)
cost:coût pour aller à cet ID noeud

Warning

Vous devez vous reconnecter à la base de données après CREATE EXTENSION pgrouting. Sinon la fonction va retourner Error computing path: std::bad_alloc.

Histoire

  • Renommé depuis la version 2.0.0

Exemples

  • Sans reverse_cost
SELECT seq, id1 AS node, cost
        FROM pgr_drivingDistance(
                'SELECT id, source, target, cost FROM edge_table',
                7, 1.5, false, false
        );

 seq | node | cost
-----+------+------
   0 |    2 |    1
   1 |    6 |    1
   2 |    7 |    0
   3 |    8 |    1
   4 |   10 |    1
(5 rows)
  • Avec reverse_cost
SELECT seq, id1 AS node, cost
        FROM pgr_drivingDistance(
                'SELECT id, source, target, cost, reverse_cost FROM edge_table',
                7, 1.5, true, true
        );

 seq | node | cost
-----+------+------
   0 |    2 |    1
   1 |    6 |    1
   2 |    7 |    0
   3 |    8 |    1
   4 |   10 |    1
(5 rows)

Les requêtes utilisent le réseau Données d’échantillon.

Voir aussi

«  With Driving Distance Enabled   ::   Contenu   ::   pgr_alphaShape  »