Skip to main content

Routing Layer

Contents

The L.ALKMaps.Layer.Routing layer is used to retrieve, display, and get reports for routes.

Add A Route

Once you have added a routing layer to your map, you can begin adding routes to the layer. The addRoute function of the routing layer has up to six parameters: stops, options, functionOptions, reportOptions, and the success and failure callback functions. Descriptions for these parameters can be found in the table below.

Stops

The stops parameter of the addRoute method should contain an array of L.latLng objects representing the stops of the route.

Options

The options parameter contains options related to the generation of the route and optional reports.

Parameter Type/Values Description
vehicleType [0 | 1 | 2] Default: 0
Restricts the route to roads that are accessible by the selected vehicle type.
  • 0 - Truck
  • 1 - Light Truck
  • 2 - Automobile
routingType [0 | 1 | 2] Default: 0
Generated the route to match the type.
  • 0 - Practical
  • 1 - Shortest
  • 2 - Fastest
routeOptimization [0 | 1 | 2] Default: 0
  • 0 - None
  • 1 - Optimize All Stops
  • 2 - Optimize Intermediate Stops
tollDiscourage boolean Default: false
Generates the route by trying to avoid toll roads.
tollRoads [1 | 2 | 3] Default: Null
Indicates whether or not to avoid toll roads when generating a route. If this parameter is specified, the value in tollDiscourage will be ignored. If this parameter is null, the value in tollDiscourage will be used. Available in dataVersion PCM34 and Later. Use tollDiscourage for older versions.
  • 1 - Always Avoid
  • 2 - Avoid if Possible
  • 3 - Use
classOverrides [0 | 1 | 2 | 3] Default: 0
  • 0 - Indicates that no class overrides are present.
  • 1 - Indicates a 53' class override.
  • 2 - Indicates a National Network class override.
  • 3 - Indicates a 53' and National Network class override.
bordersOpen boolean Default: true
Set to True to allow international border crossings, False to avoid or reduce number of international border crossings. For example, if all your stops are in the “lower 48” United States, the resulting route will stay in the United States even if the most practical or shortest route would normally involve some Canadian mileage. For EU travel, setting this to False will reduce the number of EU border crossings where possible and the route will follow the best path within the country from which the route originates.
overrideRestrict boolean Default: false
Indicates whether or not to override truck restrictions
highwayOnly boolean Default: false
Restricts the route to only highway roads.
hazMatType Array of [0 | 1 | 2 | 3 | 4 | 5 | 6 | 7] Default: 0
Restricts the route to roads that allow transportation of the selected hazardous material.
North America
  • 0 - None
  • 1 - General
  • 2 - Caustic
  • 3 - Explosives
  • 4 - Flammable
  • 5 - Inhalants
  • 6 - Radioactive
Europe
  • 0 - None
  • 1 - General
  • 3 - Explosives
  • 4 - Flammable
  • 7 - HarmfulToWater
tunnelCategory Array of [0 | 1 | 2 | 3 | 4] Default: 0
Indicates the tunnel categories, which are applicable for EU region only.
  • 0 - None
  • 1 - TunnelBCDE
  • 2 - TunnelCDE
  • 3 - TunnelDE
  • 4 - TunnelE
governorSpeedLimit number Maximum average road speed to use in route calculations that overrides all other road speeds when they are above this value. Default is disabled and valid value is between 1 and 100 mph or 1 and 161 kph based on distanceUnits.
avoidState Array of string Default: empty list
A comma-separated list of ISO2 codes for states that should be avoided when generating a route. Default is an empty list. This parameter is for North America only. Available in PCM34 and Later. Examples: ['NJ', 'PA']
avoidCountry Array of string Default: empty list
A comma-separated list of ISO2 codes for countries that should be avoided when generating a route. Default is an empty list. Available in PCM34 and Later. Examples: ['BE', 'AT']
favorState Array of string Default: empty list
A comma-separated list of ISO2 codes for states that should be favored when generating a route. Default is an empty list. This parameter is for North America only. Available in PCM34 and Later. Examples: ['NJ', 'PA']
favorCountry Array of string Default: empty list
A comma-separated list of ISO2 codes for countries that should be favored when generating a route. Default is an empty list. This parameter is for regions outside of North America. Available in PCM34 and Later. Examples: ['BE', 'AT']
distanceUnits [0 | 1] Default: 0
Distance units as miles or kilometers.
  • 0 - Miles
  • 1 - Kilometers
trkUnits [0 | 1] Default: 0
Vehicle dimension units; can be English or Metric.
  • 0 - Indicates that vehicle dimension units should be English, e.g., 13'6".
  • 1 - Indicates that vehicle dimension units should be metric.
trkHeight number The height of the vehicle in feet and inches or meters depending on units. Example 13'6" or 4.1148.
trkLength number The length of the vehicle in feet and inches or meters depending on units. Example 13'6" or 4.1148.
trkWidth number The width of the vehicle in feet and inches or meters depending on units. Example 13'6" or 4.1148.
trkWeight number The weight of the vehicle in pounds or kilograms depending on units.
trkAxles number Default: 5
The number of axles on the vehicle; acceptable values are 2 through 14.
inclFerryDist boolean Default: true
Indicates whether or not to include ferry distances in mileage calculations.
fuelUnits [0 | 1] Default: 0
Fuel units as gallons and liters.
  • 0 - Gallons
  • 1 - Liters
truckConfig [0 | 1 | 2 | 3 | 4] Default: 0
The vehicle style.
  • 0 - Indicates that no particular vehicle style is chosen.
  • 1 - 28' double trailer.
  • 2 - 40' straight trailer.
  • 3 - 48' semitrailer.
  • 4 - 53' semitrailer
inclTollData boolean Default: true
Indicates whether or not reports should calculate toll costs.
fuelEconLoad number The fuel efficiency (distance units per fuel units) when loaded.
fuelEconEmpty number The fuel efficiency (distance units per fuel units) when empty.
costPerFuelUnit number The cost per fuel unit of fuel.
costGHG number The cost of greenhouse gas in lbs. per fuel unit.
costMaintLoad number The maintenance cost per distance unit when loaded.
costMaintEmpty number The maintenance cost per distance unit when empty.
costTimeLoad number The time cost per mile/km when loaded.
costTimeEmpty number The time cost per mile/km when empty.
tollCurrency [0 | 1] Default: 0
The toll currency.
  • 0 - Indicates that the currency should be United States dollars.
  • 1 - Indicates that the currency should be Canadian dollars.
exchangeRate number The change rate to convert US dollars to Canadian dollars.
citeInt number The cite interval to be used when generating a geotunnel report. The minimum value is 0.1.
region [NA | EU | OC | SA | AS | AF | ME] Default: NA
The data region in which the route stops are located.

Note: If region is not provided, region value will be inherited from baseLayer region parameter.
dataset [Current | PCM_EU | PCM_OC | PCM_SA
| PCM_AF | PCM_ME | PCM_IN | PCM_SE]
Default: Current
For users licensed for multiple regional datasets.

Function Options

The functionOptions parameter contains options related to the functionality of the actual layer.

Parameter Type/Values Description
routeId String User defined id for the route.
style Object Object containing styling properties to be used for the visualization of the route. If not provided, one of the predefined route styles will be used.
frameRoutes Boolean Determines whether or not the map will zoom to fit all the routes on the layer.
Default: true
showHandles Boolean Determines whether or not to display the graphics that normally display at each of the route’s stops.
Default: true

Report Options

The reportOptions parameter contains options related to the creation of the different route reports and formats.

Parameter Type/Values Description
type [Mileage / Directions / Detail / State / CalcMiles / LeastCost / Geotunnel] Comma-separated list of requested report types.
format [json / html] Default: json
The format of the report returned with the route.

Arrows Along Route

The following piece of sample code demonstrates a route with arrows. The plugin is provided by Benjamin Becquet.

Last updated July 2, 2024.
Contents