ExMaps v1.1.0-rc.1 ExMaps View Source
Public ExMaps application interface.
Link to this section Summary
Types
Required Distance Calculations API request parameters
Required Distance Matrix API request parameters
Shared APIs request optional parameters. Detailed description can be found below: https://developers.google.com/maps/documentation/directions/intro
General params
Functions
Returns calculated directions between provided locations. It checkes wether the directions with same set of options were alread calculated and set in cache, if not, it calls Google API, fetches the result, saves it in cache and returns it
Returns travel distance and time for a matrix of origins and destinations. It checkes wether the matrix with same set of options was alread requested and set in cache, if not, it calls Google API, fetches the result, saves it in cache and returns it
Link to this section Types
avoid_value() :: :tolls | :highways | :ferries | :indoor
Required Distance Calculations API request parameters.
origin
— It can be passed in three different forms, as the address string, latitude/longitude tuple or map containing PlaceID.destination
— It can be passed in three different forms, as the address string, latitude/longitude tuple or map containing PlaceID.
Required Distance Matrix API request parameters.
origin
— It can be passed in three different forms, as the address string, latitude/longitude tuple or map containing PlaceID.destination
— It can be passed in three different forms, as the address string, latitude/longitude tuple or map containing PlaceID.
Shared APIs request optional parameters. Detailed description can be found below: https://developers.google.com/maps/documentation/directions/intro
mode
- Specifies the mode of transport to use when calculating directions. Defaults to driving.waypoints
- A list of waypoints.alternatives
- If set to true, API may provide more than one route alternative.avoid
- List of specific routes to avoid.language
- Directions may be provided in specified language (but not all JSON / XML answer fields)units
- If not present, unit system of the origin’s country or region will be returned.region
- Biasing on a specific region.arrival_time
- Desired arrival time in seconds since midnight, January 1, 1970 UTC.departure_time
- Desired departure time in seconds since midnight, January 1, 1970 UTC.traffic_model
- It may only be specified for driving directions where the request includes a departure_time.transit_mode
- It may only be specified for transit directions.transit_routing_preference
- It may bias the options returned.
option() :: mode() | output_format() | waypoints() | alternatives() | language() | units() | region() | arrival_time() | departure_time() | traffic_model() | transit_mode() | transit_routing_preference()
General params.
Format of the output of Google Maps API call. Please note that json is recommended by Google docs.
traffic_model() :: :best_guess | :pessimistic | :optimistic
transit_mode() :: :bus | :subway | :train | :tram | :rail
transit_routing_preference() :: :less_walking | :fewer_transfers
Link to this section Functions
get_directions(coordinates(), options()) :: [map()]
Returns calculated directions between provided locations. It checkes wether the directions with same set of options were alread calculated and set in cache, if not, it calls Google API, fetches the result, saves it in cache and returns it.
Examples
iex> ExMaps.get_directions([%{origin: "Warsaw", destination: "Amsterdam"}], units: :metric)
[%{"geocoded_waypoints" => ... }]
get_distance_matrix(matrix_coordinates(), options()) :: [map()]
Returns travel distance and time for a matrix of origins and destinations. It checkes wether the matrix with same set of options was alread requested and set in cache, if not, it calls Google API, fetches the result, saves it in cache and returns it.
Examples
iex> ExMaps.get_distance_matrix([%{origins: ["Warsaw", "Kraków"], destinations: ["Amsterdam", "Utrecht"]}], language: "pl")
[%{"destination_addresses" => ...}]