guidance-replay
v0.1.4
Published
An event source loop for visual guidance simulator. It turns timestamped GeoJSON into mock location events.
Downloads
27
Readme
guidance-replay
An event source loop for visual guidance simulator. It turns timestamped GeoJSON into mock location events.
API
Emitter
Generate location events for timestamped GeoJSON along a given update interval.
Parameters
geojson
Object Timestamped geojson of route.updateInterval
number Interval (milliseconds) at which to generate location events.
Emitter.all
Return all location events for a route. Useful for debugging.
Returns Array<Object> Location events with coordinates, bearing, and, if in speedmode, speed and speedchange.
Emitter.next
Return the next location event for a route. Useful for long and/or complex routes.
Returns Object Location events with coordinates, bearing, and, if in speedmode, speed and speedchange.
Route
Turn a Mapbox Directions API response into timestamped GeoJSON in the format of GeoJSON Coordinate Properties.
Parameters
directions
Object Response from Mapbox Directions API.options
Object Optional spacing parameter, which can beconstant
oracceldecel
. Default isconstant
.
Returns Object GeoJSON LineString with coordinateProperties.times timestamps in milliseconds for each coordinate in the input geometry, starting at 0 ms.
Locator
Generate the location of an event, in terms of step number or coordinates, given any time along the route in milliseconds.
Parameters
directions
Object Response from Mapbox Directions API.
Locator.maneuvers
Get times (milliseconds) and coordinates for the maneuvers along the route.
Returns Object Object with times
and coordinates
arrays for maneuvers along route.
Locator.step
Find the current Mapbox Directions API step given a time along the route.
Parameters
time
Number Time along the route in milliseconds.
Returns Number Step along the route.
Locator.coords
Find the current coordinates given a time along the route.
Parameters
time
Number Time along the route in milliseconds.
Returns Object Point feature with at locaiton corresponding to time input.
Development
test
npm test
run simulator
npm start
# --> http://localhost:9966/