Extends Leaflet Routing Machine with support for IGN GéoServices services.
Note: Versions 0.1.x were released as lrm-geoportail
, and supported the old API via Geoportail. They required an API key to be used.
Some brief instructions follow below, but the Leaflet Routing Machine tutorial on alternative routers is recommended.
Go to the releases page to get the script to include in your page. Put the script after Leaflet, Leaflet Routing Machine and corslite have been loaded.
To use with for example Browserify:
npm install --save lrm-ign-geoservices
There's a single class exported by this module, L.Routing.IgnGeoservices
. It implements the IRouter
interface. Use it to replace Leaflet Routing Machine's default OSRM router implementation:
var L = require('leaflet');
var corslite = require('@mapbox/corslite');
require('leaflet-routing-machine');
require('lrm-ign-geoservices'); // This will tack on the class to the L.Routing namespace
L.Routing.control({
router: new L.Routing.IgnGeoservices(),
}).addTo(map);
Options can be passed to the constructor, and/or to the route
method:
router = new L.Routing.IgnGeoservices({ resource: 'bdtopo-pgr' });
router.route(waypoints, callback, context, /* options */ { profile: 'pedestrian' });
timeout
: timeout for each request in ms (defaults to 10 seconds)resource
:bdtopo-osrm
(default) orbdtopo-pgr
profile
:car
(default) orpedestrian
optimization
:fastest
(default) orshortest
See IGN GeoServices documentation and API description for reference.
- Instructions are sometimes/mostly missing. This is due to limitations from the IGN API.
This projet is a complete rip-off of Per Liedman's lrm-graphhopper module.