Skip to content

mapbox/mapbox-match.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

mapbox-match.js

Mapbox.js plugin to match GeoJSON geometries to the OpenStreetMap streets network using the Mapbox Map Matching API.

screenshot 2015-06-19 17 57 24

A GPS track (cyan) matched to the streets via a profile for cars (solid red line) and for pedestrians (dotted red line).

Installation

Include mapbox-match.js after Mapbox.js in your html. Download the js files from the dist directory.

example

L.mapbox.mapmatching(geojson, options, function (error, layer) {
    layer.addTo(map);
    layer.setStyle({
        color: '#9a0202',
        weight: 4,
        opacity: 0.8
    });
});

API

L.mapbox.mapmatching(geojson, options, callback)

Given a geojson object, returns a leaflet feature layer with the matched geometries. Since an asynchronous request is made for matching, you need to specify a callback function that runs when there is a successful response.

Options

name required? description
profile required Profile to match trace against. Options are driving, walking and cycling
mapMatchAPI optional Custom API endpoint to query. Overrides the profile option`
gpsPrecision optional Integer indicating the precision of the input geometries in metres (default: 5)
return optional Type of object to return after matching. Options are layer (default) returns a leaflet featureLayer, geojson returns a geojson feature collection

Development

This is a browserify project:

git clone [email protected]:mapbox/mapbox-match.js.git
cd mapbox-match.js
npm install
npm run build

mapbox-match.js and mapbox-match.min.js are built files generated from index.js by browserify. If you find an issue, it either needs to be fixed in index.js, or in one of the libraries mapbox-mapmatch uses to parse formats.

##Algorithm

  1. Read an input geojson FeatureCollection
  2. Tidy the geojson using geojson-tidy
  3. Match every feature using the Mapbox Map Matching API
  4. Return a leaflet featureLayer with the matched features or just a geojson object

About

A plugin to align geometries to streetmap data

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published