Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
osrm [Le 21/03/2018, 11:45] 82.195.173.240 [Démarrage du serveur] |
osrm [Le 11/09/2022, 11:04] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Xenial Trusty SIG openstreetmap BROUILLON}} | + | {{tag>Bionic SIG openstreetmap BROUILLON}} |
---- | ---- | ||
Ligne 21: | Ligne 21: | ||
Le résultat du calcul OSRM peut apparaître un peu difficile à lire. Voir en bas de page une suggestion de script pour y voir plus clair. | Le résultat du calcul OSRM peut apparaître un peu difficile à lire. Voir en bas de page une suggestion de script pour y voir plus clair. | ||
+ | =====Pré-requis===== | ||
- | ===== Pré-requis ===== | + | [[:tutoriel:comment_installer_un_paquet|Installer les paquets]] : **[[apt>build-essential,git,cmake,pkg-config,libprotoc-dev,libprotobuf9v5,protobuf-compiler,libprotobuf-dev,libosmpbf-dev,libpng12-dev,libbz2-dev,libstxxl-dev,libstxxl-doc,libstxxl1v5,libxml2-dev,libzip-dev,libboost-all-dev,lua5.2,liblua5.2-dev,libtbb-dev,doxygen,checkinstall]]**. |
- | + | ||
- | * Disposer des [[:sudo|droits d'administration]]. | + | |
- | * Disposer d'une connexion à Internet configurée et activée. | + | |
- | ====Pour Ubuntu 16.04==== | ||
- | [[:tutoriel:comment_installer_un_paquet|Installer les paquets]] : **[[apt> | ||
- | build-essential | ||
- | ,git,cmake | ||
- | ,pkg-config | ||
- | ,libprotoc-dev | ||
- | ,libprotobuf9v5 | ||
- | ,protobuf-compiler | ||
- | ,libprotobuf-dev | ||
- | ,libosmpbf-dev | ||
- | ,libpng12-dev | ||
- | ,libbz2-dev | ||
- | ,libstxxl-dev | ||
- | ,libstxxl-doc | ||
- | ,libstxxl1v5 | ||
- | ,libxml2-dev | ||
- | ,libzip-dev | ||
- | ,libboost-all-dev | ||
- | ,lua5.2 | ||
- | ,liblua5.2-dev | ||
- | ,libtbb-dev | ||
- | ,doxygen | ||
- | ,checkinstall]]**. | ||
- | <code> | ||
- | sudo apt-get install build-essential git cmake pkg-config libprotoc-dev libprotobuf9v5 protobuf-compiler libprotobuf-dev libosmpbf-dev libpng12-dev libbz2-dev libstxxl-dev libstxxl-doc libstxxl1v5 libxml2-dev libzip-dev libboost-all-dev lua5.2 liblua5.2-dev libtbb-dev doxygen checkinstall | ||
- | </code> | ||
- | ====Pour Ubuntu 14.04==== | ||
- | [[:tutoriel:comment_installer_un_paquet|Installer les paquets]] : **[[apt> | ||
- | build-essential | ||
- | ,git | ||
- | ,cmake | ||
- | ,pkg-config | ||
- | ,libprotoc-dev | ||
- | ,libprotobuf8 | ||
- | ,protobuf-compiler | ||
- | ,libprotobuf-dev | ||
- | ,libosmpbf-dev | ||
- | ,libpng12-dev | ||
- | ,libbz2-dev | ||
- | ,libstxxl-dev | ||
- | ,libstxxl-doc | ||
- | ,libstxxl1 | ||
- | ,libxml2-dev | ||
- | ,libzip-dev | ||
- | ,libboost-all-dev | ||
- | ,lua5.1 | ||
- | ,liblua5.1-0-dev | ||
- | ,libluabind-dev | ||
- | ,libluajit-5.1-dev | ||
- | ,libtbb-dev]]**. | ||
- | <code> | ||
- | sudo apt-get install build-essential git cmake pkg-config libprotoc-dev libprotobuf8 protobuf-compiler libprotobuf-dev libosmpbf-dev libpng12-dev libbz2-dev libstxxl-dev libstxxl-doc libstxxl1 libxml2-dev libzip-dev libboost-all-dev lua5.1 liblua5.1-0-dev libluabind-dev libluajit-5.1-dev libtbb-dev | ||
- | </code> | ||
- | |||
===== Installation ===== | ===== Installation ===== | ||
- | |||
- | ==== Télécharger les sources ==== | ||
- | <code> | + | * Télécharger les sources : <code>git clone https://github.com/Project-OSRM/osrm-backend.git</code> |
- | git clone https://github.com/Project-OSRM/osrm-backend.git | + | * Compiler en se plaçant dans le répertoire à l'intérieur duquel les sources ont été téléchargées : <code>cd osrm-backend</code> |
- | </code> | + | * Puis lancer la compilation : <code>mkdir -p build |
- | + | ||
- | ==== Compiler ==== | + | |
- | + | ||
- | Se placer dans le réperoire à l'intérieur duquel les sources ont été téléchargées : | + | |
- | <code> | + | |
- | cd osrm-backend | + | |
- | </code> | + | |
- | + | ||
- | Puis lancer la compilation : | + | |
- | + | ||
- | <code> | + | |
- | mkdir -p build | + | |
cd build | cd build | ||
cmake .. | cmake .. | ||
Ligne 117: | Ligne 47: | ||
ln -s ../profiles/lib/ | ln -s ../profiles/lib/ | ||
</code> | </code> | ||
- | Le serveur est installé. | + | Le serveur est installé. |
===== Configuration ===== | ===== Configuration ===== | ||
Ligne 136: | Ligne 66: | ||
La syntaxe de l'instruction est la suivante : | La syntaxe de l'instruction est la suivante : | ||
disque=nom_complet_du_disque,capacité,méthode_d’accès | disque=nom_complet_du_disque,capacité,méthode_d’accès | ||
- | * nom_complet_du_disque : chemin complet d’accès au disque depuis la racine : /tmp/stxxl, /mnt/disk0, /media/utilisateur/mon_disque par exemple. | + | * nom_complet_du_disque : chemin complet d’accès au disque depuis la racine : /tmp/stxxl, /mnt/disk0, /media/utilisateur/mon_disque par exemple. |
* capacité : capacité maximale du disque en mégaoctets. Sur le site osrm la valeur 25000 est souvent conseillée, plusieurs posts de forums suggèrent de porter cette valeur à 100000 pour le fichier de la planète entière. | * capacité : capacité maximale du disque en mégaoctets. Sur le site osrm la valeur 25000 est souvent conseillée, plusieurs posts de forums suggèrent de porter cette valeur à 100000 pour le fichier de la planète entière. | ||
* méthode_d'accés : à choisr parmi les différentes implémentations d’accès au disque. | * méthode_d'accés : à choisr parmi les différentes implémentations d’accès au disque. | ||
Ligne 143: | Ligne 73: | ||
* simdisk : simule l'horloge (timings ?) du disque IBM IC35L080AVVA07. nom_complet_du_disque doit pointer sur un fichier situé sur une partition RAM disposant d'un espace disque suffisant. | * simdisk : simule l'horloge (timings ?) du disque IBM IC35L080AVVA07. nom_complet_du_disque doit pointer sur un fichier situé sur une partition RAM disposant d'un espace disque suffisant. | ||
- | Il est généralement conseillé d'installer le fichier de la planète entière sur une partition séparée afin de prévenir un grand nombre d’accès disque en lecture/écriture qui ralentissent le fonctionnement. | + | Il est généralement conseillé d'installer le fichier de la planète entière sur une partition séparée afin de prévenir un grand nombre d’accès disque en lecture/écriture qui ralentissent le fonctionnement. |
Exemple de création d'un fichier <.stxxl> | Exemple de création d'un fichier <.stxxl> | ||
Ligne 207: | Ligne 137: | ||
==== Lancement des requêtes ==== | ==== Lancement des requêtes ==== | ||
L'utilisation d'Osrm se fait dans le navigateur interne en saisissant localhost:5000 comme adresse. | L'utilisation d'Osrm se fait dans le navigateur interne en saisissant localhost:5000 comme adresse. | ||
+ | |||
+ | /!\ Documentation complète de l'API disponible sur la page du projet | ||
+ | |||
+ | http://project-osrm.org/docs/v5.15.2/api/#nearest-service | ||
+ | |||
+ | http://project-osrm.org/docs/v5.15.2/api/#general-options | ||
+ | |||
+ | NB : la forme et les options d'appels de l'API ont un peu évolué par rapport aux exemples cités ci-après | ||
La fonctionnalité utilisée pour obtenir un itinéraire est viaroute, suivi des coordonnées des points à relier. | La fonctionnalité utilisée pour obtenir un itinéraire est viaroute, suivi des coordonnées des points à relier. | ||
Ligne 220: | Ligne 158: | ||
http://router.project-osrm.org/viaroute?loc=43.29528,5.37439&loc=43.52339,5.44452&instructions=true | http://router.project-osrm.org/viaroute?loc=43.29528,5.37439&loc=43.52339,5.44452&instructions=true | ||
- | Les résultats ne seront pas forcément identiques entre les deux serveurs selon les données figurant dans chacune des bases de donnée mais c'est excessivement proche. | + | Les résultats ne seront pas forcément identiques entre les deux serveurs selon les données figurant dans chacune des bases de donnée mais c'est excessivement proche. |
- | <note tip>Pour connaître les coordonnées géographiques d'un point particulier, le site [[http://tile.openstreetmap.fr/|http://tile.openstreetmap.fr/]] permet de faire apparaître en bas à droite de l'écran les coordonnées du point survolé par le curseur de la souris. Utile pour un usage occasionnel, probablement pas si vous avez fait le choix d'installer OSRM. En effet, dans ce cas on peut supposer que vous disposez déjà d'un nombre conséquent de coordonnées géographiques organisées en base de données.</note> | + | <note tip>Pour connaître les coordonnées géographiques d'un point particulier, le site [[https://tile.openstreetmap.fr/|https://tile.openstreetmap.fr/]] permet de faire apparaître en bas à droite de l'écran les coordonnées du point survolé par le curseur de la souris. Utile pour un usage occasionnel, probablement pas si vous avez fait le choix d'installer OSRM. En effet, dans ce cas on peut supposer que vous disposez déjà d'un nombre conséquent de coordonnées géographiques organisées en base de données.</note> |
==== Retraiter les données ==== | ==== Retraiter les données ==== | ||
Ligne 240: | Ligne 178: | ||
* **(en)** [[http://project-osrm.org/|Projet OSRM]] | * **(en)** [[http://project-osrm.org/|Projet OSRM]] | ||
- | * **(fr)** [[http://dogeo.fr/osrm-installation/|Dogeo]] | + | * **(fr)** [[https://blog.dogeo.fr/2015/02/23/osrm-installation.html|Dogeo]] |
* **(fr)** [[http://openstreetmap.fr/osrm-10M|OSRM sur openstreetmap]] | * **(fr)** [[http://openstreetmap.fr/osrm-10M|OSRM sur openstreetmap]] |