Pour ces travaux pratiques, vous aurez besoin de :
Tout les outils requis sont disponibles sur l’OSGeo LiveDVD, donc les références qui suivent représentent un rapide résumé de comment l’installer sur votre propre machine tournant sur Ubuntu 10.04 ou suppérieur.
L’installation de pgRouting sur Ubuntu est devenue extrêmement simple du fait de la disponibilité d’un paquet binaire dans le dépot Launchpad: .
Tout ce que vous avez à faire maintenant c’est d’ouvrir une fenêtre de terminal et de lancer :
# Ajouter le dépôt launchpad
sudo add-apt-repository ppa:georepublic/pgrouting
sudo apt-get update
# Installer les paquets pgRouting
sudo apt-get install gaul-devel \
postgresql-8.4-pgrouting \
postgresql-8.4-pgrouting-dd \
postgresql-8.4-pgrouting-tsp
# Installer le paquet osm2pgrouting
sudo apt-get install osm2pgrouting
# Installé le contenu des travaux pratiques (optionel)
sudo apt-get install pgrouting-workshop
Cela installera aussi tout les paquets dépendants comme PostgreSQL et PostGIS s’ils ne sont pas déjà installés.
Note
Suite à l’installation du paquet workshop, vous touverez tout les documents dans /usr/share/pgrouting/workshop/.
Nous recommendons de copier l’ensemble de ces fichiers dans le répertoire de votre utilisateur et de créer un lient symbolique vers votre serveur web :
cp -R /usr/share/pgrouting/workshop ~/Desktop/pgrouting-workshop
sudo ln -s ~/Desktop/pgrouting-workshop /var/www/pgrouting-workshop
Vous pouvez ensuite trouver les fichiers des travaux pratiques dans le répertoire pgrouting-workshop et y accéder :
Note
Des exemples de données additionelles sont disponibles dans le répertoire data des travaux pratique. Ils contiennent un fichier compressé contenant les sauvegardes de base de données ainsi qu’un plus petit ensemble de données du réseau routier du centre ville de Denver. Pour décompresser ce fichier, exécuter la commande tar -xzf ~/Desktop/pgrouting-workshop/data.tar.gz.
C’est une bonne idée de créer un modèle de bases de données PostGIS et pgRouting. Cela rendra plus facile la création de nouvelles bases de données incluant déjà les fonctionnalités requises, sans avoir à charger les fichiers SQL pour chaque nouvelle base.
Un script est disponible dans le répertoire bin des travaux pratiques pour ajouter des modèles de bases de données incluant les fonctionnalités de PostGIS et pgRouting. Pour créer une base de données modèles, exécutez les commandes suivantes depuis une fenêtre de terminal :
cd ~/Desktop/pgrouting-workshop
bash bin/create_templates.sh
Maintenant vous pouvez créer une nouvelle base incluant les fonctionnalités pgRouting en utilsant template_routing comme modèle. Lancez la commande suivante dans une fenêtre de terminal :
# Création de la base de données "routing"
createdb -U postgres -T template_routing routing
Vous povez aussi utiliser PgAdmin III et des commandes SQL. Démarrez PgAdmin III (disponible sur le LiveDVD), connectez-vous à n’importe quelle base de données et ouvrez l’éditeur SQL afin de lancer les commandes SQL suivantes :
-- Création de la base routing
CREATE DATABASE "routing" TEMPLATE "template_routing";
Sans une base de données modèle, de nombreux fichiers contenant les fonctions de pgRouting doivent être chargés dans la base. Pour procéder de la sorte, utilsez les commandes suivantes depuis une fenêtre de terminal :
# Passer en utilisateur "postgres" (ou lancez, en tant qu'utilisateur "postgres")
sudo su postgres
# Création d'un base routing
createdb routing
createlang plpgsql routing
# Ajouter les fonctions PostGIS
psql -d routing -f /usr/share/postgresql/8.4/contrib/postgis-1.5/postgis.sql
psql -d routing -f /usr/share/postgresql/8.4/contrib/postgis-1.5/spatial_ref_sys.sql
# Ajouter les fonctions de base de pgRouting
psql -d routing -f /usr/share/postlbs/routing_core.sql
psql -d routing -f /usr/share/postlbs/routing_core_wrappers.sql
psql -d routing -f /usr/share/postlbs/routing_topology.sql
Encore un fois, vous pouvez utiliser PgAdmin III et des commandes SQL. Démarrez PgAdmin III, connextez-vous à n’importe quelle base de données, ouvrez l’éditeur de commande SQL et saisissez les commandes suivantes :
-- Création de la base routing
CREATE DATABASE "routing";
Connectez-vous ensuite à la base routing et ouvrez une nouvelle fenêtre d’éditeur SQL :
-- Ajouter le support plpgsql et les fonctions PostGIS/pgRouting
CREATE PROCEDURAL LANGUAGE plpgsql;
Maintenant, ouvrez les fichiers .sql contenant les fonctions PostGIS/pgRouting listée précédemment et chargez les dans la base de données routing.
Note
PostGIS .sql files can be stored in different directories. The exact location depends on your version of PostGIS and PostgreSQL. The example above is valid for PostgeSQL/PostGIS version 1.5 installed on OSGeo LiveDVD.
Les travaux pratiques pgRouting utiliseront les données de Denver d’OpenStreetMap, quisont déjà disponibles sur le LiveDVD. Si vous n’utilisez pas le LiveDV ou si vous voulez télécharger les dernières données ou des données de votre choix, vous pouvez utiliser l’API OpenStreetMap depuis votre fenêtre de terminal :
# Télécharger le fichier sampledata.osm
wget --progress=dot:mega -O "sampledata.osm"
"http://jxapi.openstreetmap.org/xapi/api/0.6/*
[bbox=-105.2147,39.5506,-104.594,39.9139]"
L’API a une limite de taille de téléchargment, ce qui peut être problématique pour télécharger une grande étendu géographique avec de nombreux éléments. Une alternative est d’utiliser l’éditeur JOSM, qui utilisera aussi des appels à l’API pour télécharger les données, mais il fournit un interface facile d’utilisation pour les utilisateurs. Vous pouvez sauvegarder les données come un fichier .osm pour l’utiliser avec ces travaux pratiques. JSOM est aussi disponible sur le LiveDVD.
Note
Une alternative, pour de très grandes étendues est d’utiliser le service de téléchargement de CloudMade. Cette entreprise offre des extractions de cartes pour tous les pays du monde. Pour les données du Colorado par exemple, allez sur le page http://download.cloudmade.com/americas/northern_america/united_states/colorado et téléchargez le fichier compressé .osm.bz2 :
wget --progress=dot:mega http://download.cloudmade.com/americas/northern_america/united_states/colorado/colorado.osm.bz2
Warning
Les données d’un pays complet peuvent être trop grande par rapport à l’espace disponible sur le LiveDVD et nécessité des temps de calculs extrêmement long.