Développer une application avec pgrouting sous Windows (7):OpenLayers 3

Nous arrivons à la fin de cette série. Après avoir mis en place la base de données Postgres/Postgis, nous avons configuré Geoserver pour servir les résultats de pgrouting en un lux WMS. Il ne reste plus qu’à  créer une page html avec openlayers pour pouvoir entrer les points de départ et d’arrivée et de visualiser l’itinéraire calculé. Continuer la lecture de « Développer une application avec pgrouting sous Windows (7):OpenLayers 3 »

Développer une application avec pgrouting sous Windows (6):Configurer Geoserver

Nous avons vu dans les articles précédents comment lettre en forme les données du réseau pour pgrouting et comment développer un wrapper permettant de trouver l’itinéraire entre deux points.

Nous verrons ici comment configuer Geoserver pour fournir le résultat du wrapper en tant que couche WMS ou WFS pour l’utiliser dans une page web utilisant OpenLayers 3 (prochain article). Continuer la lecture de « Développer une application avec pgrouting sous Windows (6):Configurer Geoserver »

Développer une application avec pgrouting sous Windows (5):écrire un Wrapper

Un wrapper est une fonction de PostgreSQL comme une autre, qui contient des fonctionnalités de pgRouting et PostGIS sous une forme plus facile à utiliser que lors de l’appel des fonctions pgRouting et PostGIS directement.
Les fonctions natives de pgRouting ont été conçues pour être génériques afin de pouvoir être utilisées dans le plus large éventail d’applications. Bien que cela offre de la flexibilité, l’inconvénient est que vous pouvez être obligés de remodeler temporairement votre propre structure de données avant de pouvoir appliquer des fonctions de pgRouting.
Rédiger une fonction wrapper adaptée à votre structure de données diminue la nécessité de passer par des requêtes SQL encombrantes.
Une autre raison d’utiliser les fonctions de wrapper est de contourner les attaques par injection SQL. Ériger une barrière fonctionnelle entre les entrées de l’utilisateur et les fonctions de pgRouting natives vous permet de désinfecter les entrées utilisateur. Continuer la lecture de « Développer une application avec pgrouting sous Windows (5):écrire un Wrapper »

Développer une application avec pgrouting sous Windows (4):zones de chalandise et isochrones

pgRouting comprend une fonction appelée pgr_drivingDistance, qui, en conjonction avec trois autres fonctions, pgr_withPointsDD, pgr_alphaShape et pgr_pointsAsPolygon, permet de déterminer quels chemins ont un certain coût par rapport à un point de départ ou d’arrivée.

La zone qui entoure ces chemins est désignée comme une zone de chalandise. pgr_drivingDistance, en conjonction avec pgr_pointsAsPolygon est souvent utilisée pour déterminer les exigences de couverture d’un service ou pour déterminer les emplacements optimaux pour de nouvelles installations.

Par exemple, si vous avez une caserne de pompiers, vous devez déterminer toutes les parties de la ville qui peuvent être atteintes dans les cinq minutes. Un problème inverse serait de trouver toutes les parties de la ville où les résidents peuvent conduire jusqu’à un hôpital dans les cinq minutes. Continuer la lecture de « Développer une application avec pgrouting sous Windows (4):zones de chalandise et isochrones »

Développer une application avec pgrouting sous Windows (3):l’algorithme Dijkstra

L’algorithme de Dijkstra prend en entrée un graphe orienté pondéré par des réels positifs et un sommet source. Il s’agit de construire progressivement un sous-graphe dans lequel sont classés les différents sommets par ordre croissant de leur distance minimale au sommet de départ. La distance correspond à la somme des poids des arcs empruntées. Continuer la lecture de « Développer une application avec pgrouting sous Windows (3):l’algorithme Dijkstra »

Développer une application avec pgrouting sous Windows (1)

Voici une série d’articles permettant de mettre en place une application web de routage (calcul d’itinéraires) totalement autonome, c’est à dire n’utilisant aucun service web ni api pour le calcul de l’itinéraire.
Nous mettrons en place la base de données contenant le réseau routier (ou fluvial, etc.) avec Postgresql, puis nous mettrons en place un flux wms avec Geoserver et, enfin, nous développerons une page de calcul avec OpenLayers 3. Le tout sous Windows.

Dans ce premier article nous verrons la mise en place de la base de données du réseau. Continuer la lecture de « Développer une application avec pgrouting sous Windows (1) »