node package manager

guidance-replay

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 be constant or acceldecel. Default is constant.

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/