import TravelMode from "@arcgis/core/rest/support/TravelMode.js";const TravelMode = await $arcgis.import("@arcgis/core/rest/support/TravelMode.js");- Inheritance:
- TravelMode→
Accessor
- Since
- ArcGIS Maps SDK for JavaScript 4.20
A TravelMode is a set of characteristics that define how an object like a vehicle, bicycle, or pedestrian moves along a street network. Those characteristics are considered when finding directions to determine how the vehicle or pedestrian travels, and where they can go. To get a list of supported travel modes, find the default travel mode, and to find and use a specific travel mode, you can use the fetchServiceDescription() method:
// 1. Get the default and supported travel modes of a route serviceconst apiKey = "<your api key>";const url = "https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World";const serviceDescription = await fetchServiceDescription(url, apiKey);const { defaultTravelMode, supportedTravelModes } = serviceDescription;console.log(`The name of the default travel mode is: ${defaultTravelMode.name}.`);console.log(`This service has ${supportedTravelModes.length} preset travel modes`);// 2. Find and use the "Driving Time" travel modeconst apiKey = "<your api key>";const url = "https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World";const serviceDescription = await fetchServiceDescription(url, apiKey);const { supportedTravelModes } = serviceDescription;const driveTimeTravelMode = supportedTravelModes.find(({ name }) => name === "Driving Time");
// Solve a route using the "Driving Time" travel modeconst routeParameters = { stops: stopsFeatureSet, // route stops travelMode: driveTimeTravelMode};const result = await solve(url, routeParameters);For ArcGIS Enterprise services, the default value for a travel mode is based on the layer setting when the map service is published with the network analysis capabilities. Open the service description page to see the default values for the parameters.
Constructors
Constructor
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| properties | | |
Properties
| Property | Type | Class |
|---|---|---|
| | ||
declaredClass readonly inherited | ||
| | ||
| | ||
| | ||
| | ||
| | ||
string[] | | |
| | ||
| | ||
| | ||
| | ||
| | ||
| |
attributeParameterValues
- Type
- AttributeParameterValue[]
Lists the parameterized attributes used by the travel mode.
distanceAttributeName
- Type
- string
Indicates the distance-based cost attribute for reporting directions and for solving vehicle routing problems.
| Known Value |
|---|
| kilometers |
| miles |
| meters |
impedanceAttributeName
- Type
- string
The network cost attribute used as impedance. This cost attribute is minimized while solving network analysis problems.
| Known Value |
|---|
| kilometers |
| miles |
| meters |
| minutes |
| time-at-1kph |
| travel-time |
| truck-minutes |
| truck-travel-time |
| walk-time |
restrictionAttributeNames
- Type
- string[]
The list of the restriction attributes used when solving network analysis problems with this travel mode.
| Known Value |
|---|
| any-hazmat-prohibited |
| avoid-carpool-roads |
| avoid-express-lanes |
| avoid-ferries |
| avoid-gates |
| avoid-limited-access-roads |
| avoid-private-roads |
| avoid-roads-unsuitable-for-pedestrians |
| avoid-stairways |
| avoid-toll-roads |
| avoid-toll-roads-for-trucks |
| avoid-truck-restricted-roads |
| avoid-unpaved-roads |
| axle-count-restriction |
| driving-a-bus |
| driving-a-taxi |
| driving-a-truck |
| driving-an-automobile |
| driving-an-emergency-vehicle |
| height-restriction |
| kingpin-to-rear-axle-length-restriction |
| length-restriction |
| preferred-for-pedestrians |
| riding-a-motorcycle |
| roads-under-construction-prohibited |
| semi-or-tractor-with-one-or-more-trailers-prohibited |
| single-axle-vehicles-prohibited |
| tandem-axle-vehicles-prohibited |
| through-traffic-prohibited |
| truck-with-trailers-restriction |
| use-preferred-hazmat-routes |
| use-preferred-truck-routes |
| walking |
| weight-restriction |
simplificationTolerance
- Type
- number
Specifies whether the travel mode generalizes the geometry of analysis results and by how much.
simplificationToleranceUnits
- Type
- LengthUnit
The linear units associated with simplificationTolerance.
timeAttributeName
- Type
- string
Indicates the time-based cost attribute for reporting directions.
| Known Value |
|---|
| minutes |
| time-at-1-kph |
| travel-time |
| truck-minutes |
| truck-travel-time |
| walk-time |
type
- Type
- TraveModeType
Indicates the category of travel or vehicle represented by this travel mode.
useHierarchy
- Type
- boolean
Indicates whether the travel mode uses a hierarchy attribute while performing the analysis.
uturnAtJunctions
- Type
- UTurnRestriction
Indicates how the U-turns at junctions that could occur during network traversal are handled by the solver.
Methods
fromJSON
- Signature
-
fromJSON (json: any): any
Creates a new instance of this class and initializes it with values from a JSON object
generated from an ArcGIS product. The object passed into the input json
parameter often comes from a response to a query operation in the REST API or a
toJSON()
method from another ArcGIS product. See the Using fromJSON()
topic in the Guide for details and examples of when and how to use this function.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| json | A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. | |
- Returns
- any
Returns a new instance of this class.
clone
- Signature
-
clone (): this
Creates a deep clone of this object. Any properties that store values by reference will be assigned copies of the referenced values on the cloned instance.
- Returns
- this
A deep clone of the class instance that invoked this method.
toJSON
- Signature
-
toJSON (): any
Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() guide topic for more information.
- Returns
- any
The ArcGIS portal JSON representation of an instance of this class.