Εγχειρίδιο Γρήγορης Εκκίνησης pgRouting¶
Το pgRouting είναι μια επέκταση στην PostGIS στην οποία προσθέτει διαδικασίες δρομολόγησης στις PostGIS/PostgreSQL.
Αυτό το κείμενο περιγράφει πώς να ανοίξετε μια βάση δεδομένων από την γραμμή εντολών και να εκτελέσετε μια απλή αναζήτηση ελάχιστης διαδρομής στα δεδομένα επίδειξης.
Εκτελώντας το pgRouting¶
- Ανοίξτε ένα παράθυρο
pgrouting
βάση δεδομένων:
και συνδεθείτε στην
psql -U user pgrouting
- Πληκτρολογήστε \d και θα δείτε όλους τους διαθέσιμους πίνακες:
Πίνακας σχέσεων
Σχήμα | Όνομα | Τύπος | Χρήστης
--------+---------------------+----------+----------
public | classes | table | user
public | geography_columns | view | user
public | geometry_columns | table | user
public | nodes | table | user
public | spatial_ref_sys | table | user
public | types | table | user
public | vertices_tmp | table | user
public | vertices_tmp_id_seq | sequence | user
public | ways | table | user
(9 γραμμές)
- Εκτελέστε στην συνάρτηση ελάχιστης διαδρομής Dijkstra:
SELECT * FROM shortest_path('
SELECT gid as id,
source::integer,
target::integer,
length::double precision as cost
FROM ways',
100, 600, false, false);
vertex_id | edge_id | cost
-----------+---------+---------------------
100 | 1457 | 0.0152981335887719
554 | 543 | 0.0658986376594475
553 | 542 | 0.0720522950545032
... | ... | ...
1803 | 1902 | 0.1000754339802650
600 | -1 | 0
(77 γραμμές)
- Δοκιμάστε την συνάρτηση μετατροπής (wrapper) ώστε να πάρετε το αποτέλεσμα σε μια άλλη μορφή:
SELECT gid, AsText(the_geom) AS the_geom
FROM dijkstra_sp('ways', 100, 600);
gid | the_geom
--------+---------------------------------------------------------------
533 | MULTILINESTRING((-105.0205242 39.7613979,-105.0205115 39.7620158))
534 | MULTILINESTRING((-105.0205115 39.7620158,-105.0205151 39.7632155))
535 | MULTILINESTRING((-105.0205151 39.7632155,-105.0205098 39.764433))
... | ...
9395 | MULTILINESTRING((-104.9921535 39.7209342,-104.9921516 39.722527))
9400 | MULTILINESTRING((-104.9921793 39.7147876,-104.9923595 39.714781))
(76 γραμμές)
- Με την εντολή \q εγκαταλείπετε το κέλυφος της PostgreSQL.
Τεκμηρίωση¶
- pgRouting Website - Επισκεφτείτε τον ιστοχώρο http://www.pgrouting.org για να μάθετε περισσότερα για το pgRouting.
- Workshop on DVD - Σε αυτό το DVD περιλαμβάνονται τα αρχεία του FOSS4G 2010 pgRouting workshop “FOSS4G routing with pgRouting tools, OpenStreetMap road data and GeoEx”, διαθέσιμα στο:
/usr/share/pgrouting/workshop/