This module adds a control which can integrate with valhalla api.
npm i @watergis/mapbox-gl-valhalla --save
See codesandbox.
See demo.
import { MapboxValhallaControl} from "@watergis/mapbox-gl-valhalla";
import '@watergis/mapbox-gl-valhalla/css/styles.css';
import mapboxgl from 'mapbox-gl';
const map = new mapboxgl.Map();
map.addControl(new MapboxValhallaControl(
'http://localhost:8002',
{
Contours: [
{
time: 3,
distance: 1,
color: 'ff0000',
},
{
time: 5,
distance: 2,
color: 'ffff00',
},
{
time: 10,
distance: 3,
color: '0000ff',
},
]
}
), 'top-right');
You can specify default option as follows.
- URL
- Please specify your URL for valhalla services. eg.
http://localhost:8002
- Please specify your URL for valhalla services. eg.
- Contours
- See the specification of valhalla isochrone API here.
- A JSON array of contour objects with the time in minutes in kilometers and color to use for each isochrone contour. You can specify up to four contours.
- default is as follows:
[
{
time: 5,
distance: 1,
color: 'ff0000',
},
{
time: 10,
distance: 2,
color: 'ffff00',
},
{
time: 15,
distance: 3,
color: '0000ff',
},
]
yarn run lint # check styling of source code
yarn run lint:fix # fix styling by eslint
yarn run dev
open http://localhost:8080.
If there are any changes on source code, it will be reflected automatically.
yarn run build
The modules will be generated under dist
folder.
yarn run deploy
It will deploy files under example
folder to gh-pages.
npm version patch # it increase patch version 0.0.X
npm version minor # it increase minor version 0.x.0
npm version major # it increase major version x.0.0
git push origin main --tag
# release CI will create draft release in Github pages, then publish it if it is ready.
# publish CI will deploy npmjs and Github Packages.
This Mapbox GL Valhalla plugin is still under development. so most welcome any feedbacks and pull request to this repository.