Skip To Content

Direct request

  • URL:https://<nalayer-url>/solveODCostMatrix
  • Version Introduced:10.8.1

Description

Utilice el servicio de matriz de coste de viaje para crear una matriz de coste origen-destino (OD) de varios orígenes a varios destinos. Una matriz de coste de viaje es una tabla que contiene el coste como, por ejemplo, el tiempo o la distancia de viaje, desde todos los orígenes hasta todos los destinos. Además, clasifica en orden ascendente los destinos a los que se llega desde cada origen basándose en el mínimo coste necesario para viajar desde ese origen a cada destino. Al generar una matriz de coste de viaje, puede especificar el número máximo de destinos que desee encontrar para cada origen y el tiempo o la distancia máximos de viaje al buscar destinos.

Los resultados del servicio de matriz de coste de viaje a menudo se convierten en datos de entrada para otros análisis espaciales cuando el coste de viajar por la red de calles es más adecuado que el coste en línea recta. Por ejemplo, predecir el movimiento de personas en una ciudad se modela mejor mediante costes basados en redes de calles, ya que las personas tienden a viajar por caminos y rutas peatonales.

El tiempo de viaje, la distancia o ambos para cada par de origen-destino se almacena en la matriz de salida (predeterminado) o como parte de los atributos de las líneas de salida, que no pueden tener formas ni una forma en línea recta. Aunque las líneas son rectas, siempre almacenan el tiempo y la distancia de viaje en función de la red de calles, no en función de la distancia euclidiana.

Sugerencia:

Los servicios de instalación más cercana y matriz de coste de viaje realizan análisis similares; la principal diferencia es la salida y la velocidad de cómputo. El servicio Matriz de coste de viaje genera resultados más rápido, pero no puede devolver líneas que sigan las calles subyacentes ni indicaciones de conducción. Se ha diseñado para resolver rápidamente problemas grandes de M x N y, como resultado, no contiene internamente la información necesaria para generar formas de ruta e instrucciones para conducir. Como alternativa, el servicio Instalación más cercana puede devolver rutas que siguen las calles subyacentes e indicaciones, pero se ejecuta más lento que el servicio Matriz de coste de viaje. Si necesita indicaciones de conducción o formas de ruta verdaderas, utilice el servicio Instalación más cercana; de lo contrario, utilice el servicio Matriz de coste de viaje para reducir el tiempo de cómputo.

The solve operation is performed on a network layer resource of type Origin Destination Cost Matrix.

You can provide arguments to the solveODCostMatrix operation as query parameters defined in the parameters table below.

Update at 11.0

  • Use locateSettings to specify settings that affect how inputs are located.
  • Use returnEmptyResults to return empty results instead of error when the request fails.

Especifique si el servicio devolverá resultados vacíos en lugar de la propiedad de error cuando la solicitud falle.

Updates at 10.9.1

Use geometryPrecision and geometryPrecisionZ to specify the output geometry precision for X, Y, and Z coordinates.

Request parameters

ParameterDescription
origins

(Required)

Especifica los puntos de inicio desde los cuales desplazarse hasta los destinos.

Syntax:

destinations

(Required)

Especifica las ubicaciones de puntos finales a las que desplazarse desde los orígenes.

Syntax:

token

(Required)

Provides the identity of a user that has the permissions to access the service.

f

(Optional)

Specifies the response format. The default value is html.

Values: html | json | pjson

travelMode

(Optional)

Specifies the mode of transportation for the analysis.

Value: JSON object

defaultCutoff

(Optional)

Specifies the travel time or travel distance value at which to stop searching for destinations.

defaultTargetDestinationCount

(Optional)

Specifies the number of destinations to find per origin.

outputType

(Optional)

Specifies the type of output returned by the service.

Values: esriNAODOutputSparseMatrix | esriNAODOutputStraightLines | esriNAODOutputNoLines

timeOfDay

(Optional)

Specifies the time and date at which to depart from the origins. You can also set a value of now to change the depart time from origins to the current time.

timeOfDayIsUTC

(Optional)

Specifies the time zone or zones of the timeOfDay parameter.

Values: true | false

useHierarchy

(Optional)

Specifies whether hierarchy should be used when finding the shortest paths.

Values: true | false

restrictUTurns

Specifies whether to restrict or permit the route making U-turns at junctions.

Values: esriNFSBAtDeadEndsAndIntersections | esriNFSBAllowBacktrack | esriNFSBAtDeadEndsOnly | esriNFSBNoBacktrack

impedanceAttributeName

(Optional)

Specifies the impedance.

Values: TravelTime | Minutes | TruckTravelTime | TruckMinutes | WalkTime | Miles | Kilometers

Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

accumulateAttributeNames

(Optional)

Specifies whether the service should accumulate values other than the value specified for impedanceAttributeName.

The parameter value should be specified as a comma-separated list of names. The parameter values are the same as the impedanceAttributeName parameter. You can specify the values as in the example below:

accumulateAttributeName=Miles,Kilometers

Values: TravelTime | Minutes | TruckTravelTime | TruckMinutes | WalkTime | Miles | Kilometers

Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

restrictionAttributeNames

(Optional)

Specifies which restrictions should be honored by the service. You can specify the values as in the example below:

restrictionAttributeNames=Avoid Carpool Roads, Avoid Express Lanes, Avoid Gates, Avoid Private Roads, Avoid Unpaved Roads, Driving an Automobile, Roads Under Construction Prohibited, Through Traffic Prohibited

For a complete list of values, see the restrictionAttributeNames section below.

Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

attributeParameterValues

(Optional)

Specifies additional values required by an attribute or restriction. For a complete list of accepted values, see the attributeParameterValues section below.

barriers

(Optional)

Specifies one or more points that act as temporary restrictions or represent additional time or distance that may be required to travel on the underlying streets.

Syntax:

polylineBarriers

(Optional)

Specifies one or more lines that prohibit travel anywhere the lines intersect the streets.

Syntax:

polygonBarriers

(Optional)

Specifies polygons that either prohibit travel or proportionately scale the time or distance required to travel on the streets intersected by the polygons.

Syntax:

returnOrigins

(Optional)

Specifies whether origins will be returned by the service. The default value is false.

Values: true | false

returnDestinations

(Optional)

Specifies whether destinations will be returned by the service. The default value is false.

Values: true | false

returnBarriers

(Optional)

Specifies whether barriers will be returned by the service. The default value is false.

Values: true | false

returnPolylineBarriers

(Optional)

Specifies whether polyline barriers will be returned by the service. The default value is false.

Values: true | false

returnPolygonBarriers

(Optional)

Specifies whether polygon barriers will be returned by the service. The default value is false.

Values: true | false

geometryPrecision

(Optional)

Specify the number of decimal places in the response geometries returned by solve operation. This applies to X- and Y-values only (not Z-values).

geometryPrecision = 3

geometryPrecisionZ

(Optional)

Specify the number of decimal places in the response geometries returned by solve operation. This applies to Z-value only (not X-,Y- values).

geometryPrecisionZ = 3

returnZ

(Optional)

Specifies whether to include z-values for the returned geometries if supported by the underlying network. The default value is false.

Values: true | false

ignoreInvalidLocations

(Optional)

Specifies whether invalid input locations should be ignored when finding the best solution. The default value is true.

Values: true | false

outSR

(Optional)

Specifies the spatial reference of the geometries.

overrides

(Optional)

Nota:

Este parámetro es solo para uso interno.

locateSettings

(Optional)

Specify settings that affect how inputs are located.

Value: JSON object

returnEmptyResults

(Optional)

Especifique si el servicio devolverá resultados vacíos en lugar de la propiedad de error cuando la solicitud falle.

El valor predeterminado es false.

Nota:

El valor predeterminado de cada parámetro se basa en la configuración de la capa cuando el servicio de mapas se publica con las capacidades de análisis de red. Para obtener el valor predeterminado de cada parámetro, consulte el recurso de la capa de red.

Required parameters

origins

Especifica los puntos de inicio desde los cuales desplazarse hasta los destinos.

You can use a simple comma- and semicolon-based syntax if you are passing the input locations using their longitude and latitude values in the WGS84 coordinate system and don't need to pass additional fields for each location.

Simple syntax for origins

origins=x1,y1; x2, y2; ...; xn, yn

Example using simple syntax

origins=-117.1957,34.0564; -117.184,34.0546

The origins parameter can be specified using a JSON structure that references a set of point features. The property is optional however, the JSON structure must specify either the features, url, or layer property:

  • url: especifique una solicitud de consulta REST para cualquier entidad, mapa o servicio de geoprocesamiento de ArcGIS Server que devuelva un conjunto de entidades JSON.

    La estructura JSON puede incluir esta propiedad:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • features: especifique una matriz de entidades.

    Each feature in the features array represents an origin and contains the following properties:

    • geometry: especifique la geometría de punto de entrada que contenga las propiedades x y y junto con la propiedad spatialReference. Si la propiedad spatialReference se define para todo el JSON, no es necesario que defina esta propiedad para cada geometría. Al hacerlo, se reduce el tamaño del JSON de entrada si la entrada tiene muchas entidades y también mejora el rendimiento. Esta propiedad no es necesaria si las coordenadas están en la referencia espacial predeterminada, WGS84. Si las coordenadas están en una referencia espacial diferente, debe especificar el Id. conocido de la referencia espacial (WKID). Consulte Utilizar referencias espaciales para buscar valores de WKID.
      Sugerencia:

      Se recomienda especificar explícitamente el valor de spatialReference y especificarlo para todo el JSON en lugar de para cada geometría individual.

    • attributes: especifique cada atributo como un par de clave-valor donde la clave es el nombre de un campo dado y el valor es el valor de atributo del campo correspondiente.

    The JSON structure can include the following property:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • layer—Specify a feature layer in the map service. Attribute and spatial filters can also be applied on the layer. The JSON structure can include the following properties:

    • type—The type should be set to layer to indicate that the user is specifying the origins by referencing a layer.
    • layerName: el nombre o Id. de la capa de datos en el servicio de mapas al que se hace referencia.
    • where (opcional): una cláusula WHERE para el filtro de consulta. Se permite cualquier cláusula WHERE de SQL legal que funcione en los campos de la capa.
    • geometry (opcional): la geometría que se aplica como filtro espacial. La estructura de la geometría coincide con la estructura de los objetos de geometría JSON devueltos por la ArcGIS REST API.

      El tipo de geometría se especifica usando la propiedad geometryType.

    • geometryType (opcional): el tipo de geometría especificado por la propiedad geometry. Los tipos de geometría compatibles son sobre, punto, línea y polígono. El tipo de geometría predeterminado es esriGeometryEnvelope.

      Valores: esriGeometryPoint | esriGeometryMultipoint | esriGeometryPolyline | esriGeometryPolygon | esriGeometryEnvelope

    • spatialRel (opcional): la relación espacial que se aplicará en geometry de entrada. Entre las relaciones espaciales admitidas se incluyen interseca, contiene, el sobre interseca, dentro de, etc. La relación espacial predeterminada es esriSpatialRelIntersects.

      Valores: esriSpatialRelIntersects | esriSpatialRelContains | esriSpatialRelCrosses | esriSpatialRelEnvelopeIntersects | esriSpatialRelIndexIntersects | esriSpatialRelOverlaps | esriSpatialRelTouches | esriSpatialRelWithin

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

Attributes for origins

Cuando se especifican los orígenes, se pueden definir propiedades para cada uno, como su nombre o el número de destinos a buscar desde el origen, mediante los siguientes atributos:

  • Name

    The name of the origin. The name can be a unique identifier for the origin. If outputType is esriNAODOutputStraightLines or esriNAODOutputNoLines, the name is included in the output lines Name field (the output lines name will be origin name – destination name). The name is also included in the output origins as the Name field.

    Si no se especifica el nombre, se genera automáticamente un nombre único con el prefijo de Location.

  • ObjectID

    El Id. de objeto del origen. ObjectID es un identificador único para el origen. Si el valor de outputType es esriNAODOutputStraightLines o esriNAODOutputNoLines, el valor de ObjectID se incluye en las líneas de salida (como el campo OriginID). Si outputType es esriNAODOutputSparseMatrix, el valor de ObjectID se incluye en la matriz de salida. El valor de ObjectID se incluye también en los orígenes de salida (como el campo ObjectID) y se puede utilizar para unir información adicional de salidas de herramientas al atributo de los orígenes. Si no se especifica el valor de ObjectID, se genera automáticamente un Id. único en la salida.

  • SourceID

    El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

  • SourceOID

    El ObjectID de la entidad del origen donde se ubica el punto de entrada.

  • PosAlong

    La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

  • SideOfEdge

    El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

    Nota:

    SourceID, SourceOID, PosAlong y SideOfEdge son campos de ubicación. Si estos campos están presentes en la entrada, el análisis ubicará la entrada basándose en estos campos, de lo contrario, el análisis calculará la ubicación de entrada en función de la geometría de la entrada. Sin embargo, estos campos no son obligatorios.

  • TargetDestinationCount

    La cantidad máxima de destinos que se buscarán por origen.

    If a value is not specified, the value from the defaultTargetDestinationCount parameter is used.

    Este campo permite especificar un número distinto de destinos que buscar para cada origen. Por ejemplo, con este campo puede encontrar los tres destinos más cercanos desde un origen y los dos destinos más cercanos desde otro origen.

  • Cutoff_[Impedance]

    If you want to stop searching for destinations once the search has exceeded a certain impedance value, specify a Cutoff_[Impedance] field for your origin.

    Este es el nombre de atributo de impedancia del análisis o el nombre de impedancia del modo de viaje si especifica uno. Este atributo permite especificar un valor límite distinto para cada destino.

    For example, using this attribute, you can specify to search for destinations within five minutes of travel time from one origin and to search for destinations within eight minutes of travel time from another origin.

    Las unidades del valor límite son las mismas que las unidades del atributo de impedancia. Si no se especifica un valor, se utilizará el valor del parámetro defaultCutoff.

  • CurbApproach

    Specifies the direction a vehicle may depart from the origin.

    Se debe especificar uno de los enteros enumerados en la columna Valor codificado de la siguiente tabla como un valor de este atributo. Los valores de la columna Configuración son los nombres descriptivos de los valores del atributo CurbApproach que puede haber visto al utilizar el software Extensión ArcGIS Network Analyst.

    SettingCoded valueDescription

    Cualquier lado del vehículo

    0

    El vehículo puede partir del origen en cualquier dirección, de modo que se admite un cambio de sentido en el origen. Puede elegir esta configuración si es posible y práctico que un vehículo dé la vuelta en el origen. Esta decisión puede depender del ancho del camino y del volumen de tráfico, o de si el origen dispone de una zona estacionamiento en la que los vehículos pueden maniobrar.

    Cualquier lado del vehículo
    El valor Cualquier lado del vehículo de la aproximación a borde permite todas las combinaciones de salida y llegada.

    Lado derecho del vehículo

    1

    Cuando el vehículo salga del origen, este debe quedar a la derecha del vehículo. Los cambios de sentido están prohibidos. Se usa normalmente para vehículos como los buses que deben salir de la parada de bus por el lado derecho.

    Lado derecho del vehículo
    Se muestra la combinación permitida de llegadas y salidas para la aproximación a borde Lado derecho del vehículo.

    Lado izquierdo del vehículo

    2

    Cuando el vehículo salga del origen, este debe quedar a la izquierda del vehículo. Los cambios de sentido están prohibidos. Se usa normalmente para vehículos como los buses que deben salir de la parada de bus por el lado izquierdo.

    Lado izquierdo del vehículo
    Se muestra la combinación permitida de llegadas y salidas para la aproximación a borde Lado izquierdo del vehículo.

    Sin cambio de sentido

    3

    Cuando el vehículo sale del origen, este puede estar a cualquier lado del vehículo; sin embargo, en el momento de partir, el vehículo debe reanudar la marcha en la misma dirección en la que llegó. Los cambios de sentido están prohibidos.

    No realizar cambios de sentido
    Se muestra la combinación permitida de llegadas y salidas para la aproximación a borde No realizar cambios de sentido.

    El atributo CurbApproach se ha diseñado para trabajar con los dos tipos de estándares nacionales de circulación: por la derecha (Estados Unidos) y por la izquierda (Reino Unido). En primer lugar, considere un incidente en el lado izquierdo de un vehículo. Siempre estará situada el lado izquierdo, independientemente de si el vehículo circula por la mitad izquierda o derecha del camino. Los estándares de circulación nacionales pueden influir en su decisión de aproximarse al incidente por una de las dos direcciones posibles, de modo que quede en el lado derecho o en el lado izquierdo del vehículo. Por ejemplo, si desea llegar a un incidente y que no haya un carril entre el vehículo y el incidente, elija 1 (Lado derecho del vehículo) en Estados Unidos y 2 (Lado izquierdo del vehículo) en Reino Unido.

    Lado derecho del vehículo con circulación por la derecha
    Con tráfico por la derecha, la aproximación a borde que deja al vehículo más cerca del origen es Lado derecho del vehículo.
    Lado izquierdo del vehículo con circulación por la izquierda
    Con tráfico por la izquierda, la aproximación a borde que deja al vehículo más cerca del origen es Lado izquierdo del vehículo.

  • Bearing

    La dirección en la que está avanzando un punto. Las unidades son grados y se miden en sentido horario desde el norte verdadero. Este campo se utiliza junto con el campo BearingTol.

    Los datos de rumbo normalmente se envían de forma automática desde un dispositivo móvil dotado de un receptor GPS. Intente incluir datos de rumbo si está cargando una ubicación de entrada que se mueve, como un peatón o un vehículo.

    Utilizar este campo tiende a evitar agregar ubicaciones a los ejes equivocados, que puede ocurrir cuando un vehículo está cerca de una intersección o un paso elevado, por ejemplo. El rumbo también ayuda a la herramienta a determinar en qué lado de la calle está el punto.

    Más información sobre el rumbo y la tolerancia de rumbo

  • BearingTol

    El valor de tolerancia de rumbo crea un rango de valores de rumbo aceptable al ubicar los puntos en movimiento en un eje con el campo Bearing. Si el valor del campo Bearing está dentro del rango de valores aceptables que se generan a partir de la tolerancia de rumbo en un eje, el punto se puede agregar como una ubicación de red ahí; de lo contrario, se evalúa el punto más cercano sobre el próximo eje más cercano.

    Las unidades se expresan en grados y el valor predeterminado es 30. Los valores deben ser mayores que 0 y menores que 180. Un valor de 30 significa que, cuando Network Analyst intenta agregar una ubicación de red en un eje, se genera un rango de valores de rumbo aceptable 15 grados hacia cada lado del eje (izquierda y derecha) y en ambas direcciones digitalizadas del eje.

    Más información sobre el rumbo y la tolerancia de rumbo

  • NavLatency

    Este campo solo se utiliza en el proceso de resolución si los campos Bearing y BearingTol también tienen valores. Sin embargo, la introducción de un valor de campo NavLatency es opcional, incluso cuando hay valores en Bearing y BearingTol. NavLatency indica cuánto coste se espera desde el momento en que se envía la información de GPS desde un vehículo en movimiento a un servidor y el momento en que el dispositivo de navegación del vehículo recibe la ruta procesada.

    Las unidades de NavLatency son las mismas que las unidades del atributo de impedancia.

Syntax for origins

Syntax for specifying origins using JSON structure for features


{
  "spatialReference": {
    "wkid": <wkid>,
    "latestWkid": <wkid>
  },
  "features": [
    {
      "geometry": {
        "x": <x>,
        "y": <y>
      },
      "attributes": {
        "<field1>": <value11>,
        "<field2>": <value12>
      }
    },
    {
      "geometry": {
        "x": <x>,
        "y": <y>
      },
      "attributes": {
        "<field1>": <value21>,
        "<field2>": <value22>
      }
    }
  ],
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying origins using a URL returning a JSON response


{
  "url": "<url>"
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying origins using a layer

{ 
  "type" : "layer",
  "layerName" : "<layerName>",
  "where" : "<whereClause>",
  "geometry" : {<geometry>},
  "geometryType" : "<geometryType>",
  "spatialRel" : "<spatialRel>"
  "doNotLocateOnRestrictedElements": true | false
}

Examples for origins

Example one: Specifying origins geometries in the Web Mercator spatial reference using JSON structure

The example also shows how to specify the originsName attribute for each origin and specify a different number of destinations to find for each origin using the TargetDestinationCount attribute.


{
  "spatialReference": {
    "wkid": 102100
  },
  "features": [
    {
      "geometry": {
        "x": -13635398.9398,
        "y": 4544699.034400001
      },
      "attributes": {
        "Name": "123 Main St",
        "TargetDestinationCount": 1
      }
    },
    {
      "geometry": {
        "x": -13632733.3441,
        "y": 4547651.028300002
      },
      "attributes": {
        "Name": "845 Mulberry St",
        "TargetDestinationCount": 2
      }
    }
  ]
}

Example two: Specifying origins using a URL

The URL makes a query for a few features from a map service. A URL querying features from a feature service can also be specified.


{
  "url": "https://machine.domain.com/webadaptor/rest/services/Network/USA/MapServer/1/query?where=1%3D1&outFields=Name,RouteName&f=json"
}

destinations

Especifica las ubicaciones de puntos finales a las que desplazarse desde los orígenes.

You can use a simple comma- and semicolon-based syntax if you are passing the input locations using their longitude and latitude values in the WGS84 coordinate system and don't need to pass additional fields for each location.

Simple syntax for destinations

destinations=x1,y1; x2, y2; ...; xn, yn

Example using simple syntax

destinations=-117.1957,34.0564; -117.184,34.0546

The destinations parameter can be specified using a JSON structure that references a set of point features. The property is optional however, the JSON structure must specify either the features, url, or layer property:

  • url: especifique una solicitud de consulta REST para cualquier entidad, mapa o servicio de geoprocesamiento de ArcGIS Server que devuelva un conjunto de entidades JSON.

    La estructura JSON puede incluir esta propiedad:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • features: especifique una matriz de entidades.

    Each feature in the features array represents a destination and contains the following properties:

    • geometry: especifique la geometría de punto de entrada que contenga las propiedades x y y junto con la propiedad spatialReference. Si la propiedad spatialReference se define para todo el JSON, no es necesario que defina esta propiedad para cada geometría. Al hacerlo, se reduce el tamaño del JSON de entrada si la entrada tiene muchas entidades y también mejora el rendimiento. Esta propiedad no es necesaria si las coordenadas están en la referencia espacial predeterminada, WGS84. Si las coordenadas están en una referencia espacial diferente, debe especificar el Id. conocido de la referencia espacial (WKID). Consulte Utilizar referencias espaciales para buscar valores de WKID.
      Sugerencia:

      Se recomienda especificar explícitamente el valor de spatialReference y especificarlo para todo el JSON en lugar de para cada geometría individual.

    • attributes: especifique cada atributo como un par de clave-valor donde la clave es el nombre de un campo dado y el valor es el valor de atributo del campo correspondiente.

    The JSON structure can include the following property:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • layer—Specify a feature layer in the map service. Attribute and spatial filters can also be applied on the layer. The JSON structure can include the following properties:

    • type—The type should be set to layer to indicate that the user is specifying the destinations by referencing a layer.
    • layerName: el nombre o Id. de la capa de datos en el servicio de mapas al que se hace referencia.
    • where (opcional): una cláusula WHERE para el filtro de consulta. Se permite cualquier cláusula WHERE de SQL legal que funcione en los campos de la capa.
    • geometry (opcional): la geometría que se aplica como filtro espacial. La estructura de la geometría coincide con la estructura de los objetos de geometría JSON devueltos por la ArcGIS REST API.

      El tipo de geometría se especifica usando la propiedad geometryType.

    • geometryType (opcional): el tipo de geometría especificado por la propiedad geometry. Los tipos de geometría compatibles son sobre, punto, línea y polígono. El tipo de geometría predeterminado es esriGeometryEnvelope.

      Valores: esriGeometryPoint | esriGeometryMultipoint | esriGeometryPolyline | esriGeometryPolygon | esriGeometryEnvelope

    • spatialRel (opcional): la relación espacial que se aplicará en geometry de entrada. Entre las relaciones espaciales admitidas se incluyen interseca, contiene, el sobre interseca, dentro de, etc. La relación espacial predeterminada es esriSpatialRelIntersects.

      Valores: esriSpatialRelIntersects | esriSpatialRelContains | esriSpatialRelCrosses | esriSpatialRelEnvelopeIntersects | esriSpatialRelIndexIntersects | esriSpatialRelOverlaps | esriSpatialRelTouches | esriSpatialRelWithin

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

Attributes for destinations

Cuando se especifican los destinos, se pueden definir propiedades para cada uno, como su nombre, mediante los siguientes atributos:

  • Name

    The name of the destination. The name can be a unique identifier for the destination. If outputType is esriNAODOutputStraightLines or esriNAODOutputNoLines, the name is included in the output lines Name field (the output lines name will be origin name – destination name). The name is also included in the output destinations as the Name field.

    Si no se especifica el nombre, se genera automáticamente un nombre único con el prefijo de Location.

  • ObjectID

    El Id. de objeto del destino. ObjectID es un identificador único del destino. Si el valor de outputType es esriNAODOutputStraightLines o esriNAODOutputNoLines, el valor de ObjectID se incluye en las líneas de salida (como el campo DestinationID). Si outputType es esriNAODOutputSparseMatrix, el valor de ObjectID se incluye en la matriz de salida. El valor de ObjectID se incluye también en los destinos de salida (como el campo ObjectID) y se puede utilizar para unir información adicional de salidas de herramientas al atributo de los destinos. Si no se especifica el valor de ObjectID, se genera automáticamente un Id. único en la salida.

  • SourceID

    El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

  • SourceOID

    El ObjectID de la entidad del origen donde se ubica el punto de entrada.

  • PosAlong

    La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

  • SideOfEdge

    El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

    Nota:

    SourceID, SourceOID, PosAlong y SideOfEdge son campos de ubicación. Si estos campos están presentes en la entrada, el análisis ubicará la entrada basándose en estos campos, de lo contrario, el análisis calculará la ubicación de entrada en función de la geometría de la entrada. Sin embargo, estos campos no son obligatorios.

  • CurbApproach

    Specifies the direction from which a vehicle may arrive at the destination.

    Se debe especificar uno de los enteros enumerados en la columna Valor codificado de la siguiente tabla como un valor de este atributo. Los valores de la columna Configuración son los nombres descriptivos de los valores del atributo CurbApproach que puede haber visto al utilizar el software Extensión ArcGIS Network Analyst.

    SettingCoded valueDescription

    Cualquier lado del vehículo

    0

    El vehículo puede llegar al destino desde cualquier dirección. Puede elegir esta configuración si es posible y práctico que el vehículo dé la vuelta en el destino. Esta decisión puede depender del ancho del camino y del volumen de tráfico, o de si el destino dispone de una zona estacionamiento en la que los vehículos pueden maniobrar.

    Cualquier lado del vehículo
    El valor Cualquier lado del vehículo de la aproximación a borde permite todas las combinaciones de salida y llegada.

    Lado derecho del vehículo

    1

    Cuando el vehículo llegue al destino, este debe quedar al lado derecho del vehículo. Los cambios de sentido están prohibidos. Se usa normalmente para vehículos como los buses que deben llegar a la parada del bus por la derecha.

    Lado derecho del vehículo
    Se muestra la combinación permitida de llegadas y salidas para la aproximación a borde Lado derecho del vehículo.

    Lado izquierdo del vehículo

    2

    Cuando el vehículo llegue al destino, este debe quedar al lado izquierdo del vehículo. Los cambios de sentido están prohibidos. Se usa normalmente para vehículos como los buses que deben llegar a la parada de bus por la izquierda.

    Lado izquierdo del vehículo
    Se muestra la combinación permitida de llegadas y salidas para la aproximación a borde Lado izquierdo del vehículo.

    Sin cambio de sentido

    3

    Cuando el vehículo llega al destino, este puede estar en cualquier lado del vehículo; sin embargo, en el momento de partir, el vehículo debe reanudar la marcha en la misma dirección en la que llegó. Los cambios de sentido están prohibidos.

    No realizar cambios de sentido
    Se muestra la combinación permitida de llegadas y salidas para la aproximación a borde No realizar cambios de sentido.

    El atributo CurbApproach se ha diseñado para trabajar con los dos tipos de estándares nacionales de circulación: por la derecha (Estados Unidos) y por la izquierda (Reino Unido). En primer lugar, considere un incidente en el lado izquierdo de un vehículo. Siempre estará situada el lado izquierdo, independientemente de si el vehículo circula por la mitad izquierda o derecha del camino. Los estándares de circulación nacionales pueden influir en su decisión de aproximarse al incidente por una de las dos direcciones posibles, de modo que quede en el lado derecho o en el lado izquierdo del vehículo. Por ejemplo, si desea llegar a un incidente y que no haya un carril entre el vehículo y el incidente, elija 1 (Lado derecho del vehículo) en Estados Unidos y 2 (Lado izquierdo del vehículo) en Reino Unido.

    Lado derecho del vehículo con circulación por la derecha
    Con tráfico por la derecha, la aproximación a borde que deja al vehículo más cerca del destino es Lado derecho del vehículo.
    Lado izquierdo del vehículo con circulación por la izquierda
    Con tráfico por la izquierda, la aproximación a borde que deja al vehículo más cerca del destino es Lado izquierdo del vehículo.

  • Bearing

    La dirección en la que está avanzando un punto. Las unidades son grados y se miden en sentido horario desde el norte verdadero. Este campo se utiliza junto con el campo BearingTol.

    Los datos de rumbo normalmente se envían de forma automática desde un dispositivo móvil dotado de un receptor GPS. Intente incluir datos de rumbo si está cargando una ubicación de entrada que se mueve, como un peatón o un vehículo.

    Utilizar este campo tiende a evitar agregar ubicaciones a los ejes equivocados, que puede ocurrir cuando un vehículo está cerca de una intersección o un paso elevado, por ejemplo. El rumbo también ayuda a la herramienta a determinar en qué lado de la calle está el punto.

    Más información sobre el rumbo y la tolerancia de rumbo

  • BearingTol

    El valor de tolerancia de rumbo crea un rango de valores de rumbo aceptable al ubicar los puntos en movimiento en un eje con el campo Bearing. Si el valor del campo Bearing está dentro del rango de valores aceptables que se generan a partir de la tolerancia de rumbo en un eje, el punto se puede agregar como una ubicación de red ahí; de lo contrario, se evalúa el punto más cercano sobre el próximo eje más cercano.

    Las unidades se expresan en grados y el valor predeterminado es 30. Los valores deben ser mayores que 0 y menores que 180. Un valor de 30 significa que, cuando Network Analyst intenta agregar una ubicación de red en un eje, se genera un rango de valores de rumbo aceptable 15 grados hacia cada lado del eje (izquierda y derecha) y en ambas direcciones digitalizadas del eje.

    Más información sobre el rumbo y la tolerancia de rumbo

  • NavLatency

    Este campo solo se utiliza en el proceso de resolución si los campos Bearing y BearingTol también tienen valores. Sin embargo, la introducción de un valor de campo NavLatency es opcional, incluso cuando hay valores en Bearing y BearingTol. NavLatency indica cuánto coste se espera desde el momento en que se envía la información de GPS desde un vehículo en movimiento a un servidor y el momento en que el dispositivo de navegación del vehículo recibe la ruta procesada.

    Las unidades de NavLatency son las mismas que las unidades del atributo de impedancia.

Syntax examples for destinations

Syntax for specifying destinations using JSON structure for features


{
  "spatialReference": {
    "wkid": <wkid>,
    "latestWkid": <wkid>
  },
  "features": [
    {
      "geometry": {
        "x": <x>,
        "y": <y>
      },
      "attributes": {
        "<field1>": <value11>,
        "<field2>": <value12>
      }
    },
    {
      "geometry": {
        "x": <x>,
        "y": <y>
      },
      "attributes": {
        "<field1>": <value21>,
        "<field2>": <value22>
      }
    }
  ],
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying destinations using a URL returning a JSON response


{
  "url": "<url>"
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying destinations using a layer

{ 
  "type" : "layer",
  "layerName" : "<layerName>",
  "where" : "<whereClause>",
  "geometry" : {<geometry>},
  "geometryType" : "<geometryType>",
  "spatialRel" : "<spatialRel>"
  "doNotLocateOnRestrictedElements": true | false
}

Examples for destinations

Example one: Specifying destinations geometry in the Web Mercator spatial reference using JSON structure

The example also shows how to specify the Name attribute.


{
  "spatialReference": {
    "wkid": 102100
  },
  "features": [
    {
      "geometry": {
        "x": -13635398.9398,
        "y": 4544699.034400001
      },
      "attributes": {
        "Name": "Store 45"
      }
    },
    {
      "geometry": {
        "x": -13632733.3441,
        "y": 4547651.028300002
      },
      "attributes": {
        "Name": "Store 67"
      }
    }
  ]
}

Example two: Specifying destinations using a URL

The URL makes a query for a few features from a map service. A URL querying features from a feature service can also be specified.


{
  "url": "https://machine.domin.com/webadaptor/rest/services/Network/USA/MapServer/1/query?where=1%3D1&outFields=Name,RouteName&f=json"
}

token

Utilice este parámetro para especificar un token que proporcione la identidad de un usuario que tenga permisos para acceder al servicio. La página de seguridad y autenticación ofrece más información sobre cómo se puede obtener un token de acceso.

Ejemplo (reemplace <yourToken> por un token válido):
token=<yourToken>

Optional parameters

f

Utilice este parámetro para especificar el formato de respuesta. El parámetro puede tener html, json o pjson como argumentos, por ejemplo, f=json. El valor pjson se utiliza para imprimir la respuesta JSON en un formato embellecido.

travelMode

Seleccione el modo de transporte para el análisis.

Los modos de viaje se administran en ArcGIS Enterprise y el administrador de su organización puede configurarlos para reflejar mejor los flujos de trabajo de la organización.

Para obtener más información sobre los modos de viaje, consulte Configurar modos de viaje.

El valor del parámetro travelMode es el objeto JSON que contiene la configuración de un modo de viaje compatible con su organización. Para obtener los modos de viaje admitidos, ejecute el servicio retrieveTravelModes.

Puede hacer una solicitud para recuperar modos de viaje utilizando el siguiente formulario:

https://machine.domain.com/webadaptor/rest/services/Routing/NetworkAnalysis/NAServer/OriginDestinationCostMatrix/retrieveTravelModes?f=json&token=<yourToken>

Nota:

Consulte Implementar inicio de sesión de aplicación para ArcGIS Online y Adquirir tokens de ArcGIS para ArcGIS Enterprise para obtener información sobre cómo generar uno.

El servicio retrieveTravelModes devuelve la respuesta siguiente.

Nota:

Dado que la respuesta es muy detallada, los elementos de la respuesta se abrevian para mayor claridad.


{
  "currentVersion": 10.8,
  "defaultTravelMode": "FEgifRtFndKNcJMJ",
  "supportedTravelModes": [
    {
      "attributeParameterValues": [
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Private Roads",
          "value": "AVOID_MEDIUM"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Walking",
          "value": "PROHIBITED"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Preferred for Pedestrians",
          "value": "PREFER_LOW"
        },
        {
          "parameterName": "Walking Speed (km/h)",
          "attributeName": "WalkTime",
          "value": 5
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Roads Unsuitable for Pedestrians",
          "value": "AVOID_HIGH"
        }
      ],
      "description": "Follows paths and roads that allow pedestrian traffic and finds
                     solutions that optimize travel time. The walking speed is set to
                     5 kilometers per hour.",
      "impedanceAttributeName": "WalkTime",
      "simplificationToleranceUnits": "esriMeters",
      "uturnAtJunctions": "esriNFSBAllowBacktrack",
      "restrictionAttributeNames": [
        "Avoid Private Roads",
        "Avoid Roads Unsuitable for Pedestrians",
        "Preferred for Pedestrians",
        "Walking"
      ],
      "useHierarchy": false,
      "simplificationTolerance": 2,
      "timeAttributeName": "WalkTime",
      "distanceAttributeName": "Kilometers",
      "type": "WALK",
      "id": "caFAgoThrvUpkFBW",
      "name": "Walking Time"
    },
    {
      "attributeParameterValues": [
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Unpaved Roads",
          "value": "AVOID_HIGH"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Private Roads",
          "value": "AVOID_MEDIUM"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Driving an Automobile",
          "value": "PROHIBITED"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Through Traffic Prohibited",
          "value": "AVOID_HIGH"
        },
        {
          "parameterName": "Vehicle Maximum Speed (km/h)",
          "attributeName": "TravelTime",
          "value": 0
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Roads Under Construction Prohibited",
          "value": "PROHIBITED"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Gates",
          "value": "AVOID_MEDIUM"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Express Lanes",
          "value": "PROHIBITED"
        },
        {
          "parameterName": "Restriction Usage",
          "attributeName": "Avoid Carpool Roads",
          "value": "PROHIBITED"
        }
      ],
      "description": "Models the movement of cars and other similar small automobiles,
                      such as pickup trucks, and finds solutions that optimize travel
                      time. Travel obeys one-way roads, avoids illegal turns, and
                      follows other rules that are specific to cars. When you specify
                      a start time, dynamic travel speeds based on traffic are used
                      where it is available.",
      "impedanceAttributeName": "TravelTime",
      "simplificationToleranceUnits": "esriMeters",
      "uturnAtJunctions": "esriNFSBAtDeadEndsAndIntersections",
      "restrictionAttributeNames": [
        "Avoid Unpaved Roads",
        "Avoid Private Roads",
        "Driving an Automobile",
        "Through Traffic Prohibited",
        "Roads Under Construction Prohibited",
        "Avoid Gates",
        "Avoid Express Lanes",
        "Avoid Carpool Roads"
      ],
      "useHierarchy": true,
      "simplificationTolerance": 10,
      "timeAttributeName": "TravelTime",
      "distanceAttributeName": "Kilometers",
      "type": "AUTOMOBILE",
      "id": "FEgifRtFndKNcJMJ",
      "name": "Driving Time"
    }
  ]
}

Desde el JSON anterior, para pasar Walking Time como modo de viaje, utilice el siguiente JSON como valor para el parámetro travelMode:


travelMode={"attributeParameterValues": [{"parameterName": "Restriction Usage","attributeName": "Walking","value": "PROHIBITED"},{"parameterName": "Restriction Usage","attributeName": "Preferred for Pedestrians","value": "PREFER_LOW"},{"parameterName": "Walking Speed (km/h)","attributeName": "WalkTime","value": 5}],"description": "Follows paths and roads that allow pedestrian traffic and finds solutions that optimize travel time. The walking speed is set to 5 kilometers per hour.","impedanceAttributeName": "WalkTime","simplificationToleranceUnits": "esriMeters","uturnAtJunctions": "esriNFSBAllowBacktrack","restrictionAttributeNames": ["Preferred for Pedestrians","Walking"],"useHierarchy": false,"simplificationTolerance": 2,"timeAttributeName": "WalkTime","distanceAttributeName": "Miles","type": "WALK","id": "caFAgoThrvUpkFBW","name": "Walking Time"}

Precaución:

When the travelMode parameter is set, you are choosing a travel mode configured in your organization, and the service automatically overrides the values of other parameters with values that model the chosen travel mode. The following parameters are overridden: impedanceAttributeName, attributeParameterValues, restrictUturns, useHierarchy, restrictionAttributeNames, and directionsTimeAttributeName.

If you don't set the travelMode parameter, the service honors the default or user-defined values for the parameters that would otherwise be overridden, so you can create your own travel mode.

defaultCutoff

Use este parámetro para especificar el valor de tiempo de viaje o distancia de viaje en que se debe detener la búsqueda de destinos desde un origen determinado.

La unidad de este parámetro se basa en la unidad del atributo de impedancia especificado usando el parámetro impedanceAttributeName o el valor de impedanceAttributeName del modo de viaje si se especifica un modo de viaje. Si el parámetro impedanceAttributeName es TravelTime, el valor de defaultCutoff se especifica en minutos. De lo contrario, el valor se especifica en millas o kilómetros en función de si el parámetro impedanceAttributeName está establecido en Miles o Kilometers, respectivamente.

Nota:

Los atributos de coste se basan en la fuente de datos que está utilizando para el análisis. TravelTime, Miles y Kilometers son atributos de coste en los datos de ArcGIS StreetMap Premium.

El valor del parámetro defaultCutoff se puede invalidar por origen especificando un valor para el atributo Cutoff_[Impedance] al especificar el valor del parámetro origins.

defaultTargetDestinationCount

La cantidad máxima de destinos que se buscarán por origen. Si no se especifica un valor para este parámetro, la matriz de salida incluirá los costes de viaje desde cada origen hasta cada destino.

El valor del parámetro defaultTargetDestinationCount se puede invalidar especificando un valor para el atributo TargetDestinationCount al especificar el parámetro origins.

outputType

Especifica el tipo de entidades de ruta que constituyen la salida del servicio. El parámetro outputType puede tener uno de los valores siguientes:

  • esriNAODOutputSparseMatrix: devuelve el coste entre origen y destino con un formato de matriz dispersa.
  • esriNAODOutputStraightLines: devuelve una línea recta entre el origen y el destino.
  • esriNAODOutputNoLines: no devuelve ninguna forma para el resultado.

timeOfDay

La hora y fecha de salida desde los orígenes. También puede especificar un valor de now para establecer la hora de salida desde los orígenes en la hora actual.

Al especificar una hora del día, se obtienen estimaciones más precisas de tiempos de viaje porque los tiempos de viaje tienen en cuenta las condiciones del tráfico aplicables a esa fecha y hora.

Para usar el tráfico en el análisis, establezca impedanceAttributeName en TravelTime y asigne un valor de timeOfDay.

Nota:
TravelTime es un atributo de coste de los datos de ArcGIS StreetMap Premium. El atributo TravelTime se establece con un evaluador de tráfico para evaluar el coste en función del tráfico. Si utiliza sus propios datos, establezca impedanceAttributeName en un atributo de coste con un evaluador de tráfico y asigne un valor de timeOfDay para usar el tráfico en el análisis.

El valor de timeOfDay representa la hora a la que comienza el viaje desde los orígenes de entrada. La hora se especifica como hora UNIX (milisegundos desde medianoche, 1 de enero de 1970).

Si se pasa un valor de now al parámetro timeOfDay, el viaje comienza en la hora actual. También invalidará el valor del parámetro timeOfDayIsUTC para que sea true. Cuando timeOfDay es now y timeOfDayIsUTC es true, el viaje comenzará o finalizará en las ubicaciones de entrada a la hora actual, independientemente de la zona horaria de las ubicaciones de entrada.

Si no se aprueba una hora del día, el servicio utiliza velocidades de carretera estáticas basadas en velocidades históricas promedio o límites de velocidad permitidos. Utiliza las velocidades permitidas en áreas donde la información de tráfico histórico no está disponible.

Cuando el servicio utiliza datos de ArcGIS StreetMap Premium, puede admitir dos tipos de tráfico: en directo y típico.

Si el valor de timeOfDay especificado está a menos de cuatro horas de la hora actual, se utilizará el tráfico en directo cuando esté disponible. El tráfico en directo recupera las velocidades en función de los registros desde teléfonos móviles, sensores y otras fuentes de datos y refleja las velocidades de viaje actuales y predice las velocidades del futuro cercano. Si el valor de timeOfDay especificado es más de cuatro horas anterior o posterior a la hora actual o si la carretera no tiene tráfico en directo, se utilizarán velocidades de tráfico típico. Las velocidades típicas se basan en patrones de tráfico históricos. Los datos de tiempo de viaje se agregan en intervalos de 15 minutos por día de la semana basándose en datos de varios años. Por consiguiente, una carretera puede tener un tiempo de viaje diferente un lunes a las 8:00 a.m., un lunes a las 8:15 a.m. o un martes a las 8:00 a.m. Dado que la varianza es en el día de la semana y en la hora del día, el tiempo de viaje es el mismo en una carretera para cualquier lunes a las 8:00 a.m., independientemente del mes o el año.

ArcGIS Online Directions and Routing Services Coverage muestra los países para los que Esri proporciona actualmente datos de tráfico.

Typical traffic

Para garantizar que la tarea use el tráfico típico en las ubicaciones en las que está disponible, elija una hora y un día de la semana y, luego, convierta el día de la semana a una de las siguientes fechas de 1990:

  • Lunes, 1/1/1990
  • Martes, 2/1/1990
  • Miércoles, 3/1/1990
  • Jueves, 4/1/1990
  • Viernes, 5/1/1990
  • Sábado, 6/1/1990
  • Domingo, 7/1/1990

Establezca la hora y la fecha en hora UNIX en milisegundos. Por ejemplo, para resolver para 13:03 los jueves, establezca la fecha y la hora en 13:03, 4 de enero de 1990, y convierta a milisegundos (631458180000). Aunque las fechas que representan los días de la semana son de 1990, el tráfico típico se calcula a partir de las tendencias de tráfico recientes, normalmente a lo largo de los datos de los últimos dos años.

Tráfico en vivo

Para utilizar el tráfico en directo cuando y donde esté disponible, elija una fecha y hora y convierta a hora UNIX.

Esri guarda los datos de tráfico en directo durante 4 horas y hace referencia a datos predictivos que abarcan hasta 4 horas en el futuro. Si la hora y la fecha que ha especificado para este parámetro están fuera de la ventana de tiempo de 8 horas o el tiempo de viaje del análisis sigue más allá de la ventana de datos predictivos, la tarea vuelve a las velocidades de tráfico típico.

Ejemplos de timeOfDay

Ejemplo 1: 13:03, 4 de enero de 1990. Tráfico típico los jueves a las 13:03.

"timeOfDay": 631458180000

Ejemplo 2: 17:00, 7 de enero de 1990. Tráfico típico los domingos a las 17:00.

"timeOfDay": 631731600000

Ejemplo 3: especifique el valor now. El análisis comienza en la hora actual y las velocidades de tráfico en directo se referencian en el análisis.

"timeOfDay": now

Ejemplo 4: 10:20, 18 de marzo de 2015. Si la hora actual está entre las 6:20, 18 de marzo de 2015, y 14:20, 18 de marzo de 2015, se hace referencia a las velocidades de tráfico en directo en el análisis; de lo contrario, se hace referencia a las velocidades de tráfico típico.


"timeOfDay": 1426674000000

timeOfDayIsUTC

Especifique la zona o zonas horarias del parámetro timeOfDay.

Falso (utilizar zonas horarias geográficamente locales)

El valor timeOfDay hace referencia a las zonas horarias locales en las que se encuentran los puntos de entrada. Esta opción hace que el análisis tenga horas de inicio rotativas en las diferentes zonas horarias.

La siguiente imagen ilustra cómo establecer el valor en false (geográficamente local). Establecer timeOfDay como 9:00, 4 de enero de 1990 (631443600000 milisegundos) y timeOfDayIsUTC como false, y enviar una solicitud válida provoca que los tiempos de conducción de puntos en la zona horaria del este empiecen a las 9:00 y a las 9:00 hora central para puntos en la zona horaria central. (Las horas de inicio tienen una variación de una hora respecto a la hora real o UTC).

timeOfDayIsUTC establecido en false
Entrada: timeOfDay es 9:00, 4 de enero de 1990 (631443600000 milisegundos) y timeOfDayIsUTC tiene el valor false

Verdadero (usar UTC)

El valor timeOfDay hace referencia a la hora universal coordinada (UTC). Las horas de inicio son simultáneas para todos los puntos, independientemente de las zonas horarias.

La siguiente imagen ilustra cómo establecer el valor en true (UTC). Establecer timeOfDay como 9:00, 4 de enero de 1990 (631443600000 milisegundos) y timeOfDayIsUTC como true hace que el tiempo de inicio de los puntos en la zona horaria del este sean las 4:00 hora del este y las 3:00 hora central para quienes se encuentren en la zona horaria central.

timeOfDayIsUTC establecido en true
Entrada: timeOfDay es 9:00, 4 de enero de 1990 (631443600000 milisegundos) y timeOfDayIsUTC tiene el valor true

useHierarchy

Especifique si se usará la jerarquía para buscar los destinos.

Precaución:

El valor de este parámetro, independientemente de si utiliza el valor predeterminado o establece explícitamente un valor, se invalida si se entrega en travelMode.

  • true: usar la jerarquía al viajar de orígenes a destinos. Cuando se usa una jerarquía, el servicio da preferencia a las calles de orden superior (como las autovías) frente a las de orden inferior (como las carreteras locales), y se puede usar para simular la preferencia del conductor de viajar por autovías en lugar de carreteras locales, aunque suponga un viaje más largo. Esto se da especialmente al buscar rutas hasta ubicaciones lejanas, porque los conductores que realizan viajes de larga distancia prefieren viajar por autovías y así evitar paradas, intersecciones y giros. Desde el punto de vista del cómputo, usar la jerarquía es más rápido, especialmente en rutas de larga distancia, porque el servicio puede determinar la ruta mejor en un subconjunto de calles relativamente más pequeño.

  • false: no usar la jerarquía al viajar de orígenes a destinos. Si no se utiliza la jerarquía, el servicio tiene en cuenta todas las calles y no da preferencia a las calles de orden superior. Se utiliza a menudo al resolver problemas en un área pequeña con una gran cantidad de destinos, pero se especifica un valor límite basado en un subconjunto de ellos.

restrictUTurns

Use este parámetro para restringir o permitir que la ruta haga cambios de sentido en los cruces.

Precaución:

El valor de este parámetro, independientemente de si utiliza el valor predeterminado o establece explícitamente un valor, se invalida si se entrega en travelMode.

Para comprender los valores del parámetro disponibles, un cruce es un punto donde solo hay dos calles que intersecan entre sí. Si hay tres o más calles que se intersecan en un punto, se llama intersección. Un cul-de-sac es una calle sin salida. Este parámetro puede tener los siguientes valores:

Valor del parámetroDescripción

esriNFSBAllowBacktrack

Los cambios de sentido están permitidos en todas partes. Permitir los cambios de sentido implica que el vehículo puede girar en un cruce y volver por la misma calle.

Cambios de sentido permitidos
Los cambios de sentido están permitidos en los cruces con cualquier número de calles adyacentes.

esriNFSBAtDeadEndsAndIntersections

Los cambios de sentido están prohibidos en los cruces donde se cruzan dos calles.

Cambios de sentido permitidos solamente en intersecciones y calles sin salida
Los cambios de sentido están permitidos solamente en las intersecciones o en calles sin salida.

esriNFSBAtDeadEndsOnly

Los cambios de sentido están prohibidos en todos los cruces y todas las intersecciones y solo se permiten en calles sin salida.

Cambios de sentido permitidos solamente en calles sin salida
Los cambios de sentido están permitidos solamente en calles sin salida.

esriNFSBNoBacktrack

Los cambios de sentido están prohibidos en todos los cruces, todas las intersecciones y todas las calles sin salida. Aunque se elija este valor para el parámetro, una ruta puede hacer cambios de sentido en paradas. Para prohibir los cambios de sentido en una parada, puede cambiar la propiedad CurbApproach al valor adecuado (3).

impedanceAttributeName

Especifique la impedancia.

Precaución:

El valor de este parámetro, independientemente de si utiliza el valor predeterminado o establece explícitamente un valor, se invalida si se entrega en travelMode.

La impedancia es un valor que cuantifica el viaje a lo largo de la red de transporte. La distancia de viaje es un ejemplo de impedancia; cuantifica la longitud de caminos y segmentos de la carretera. Del mismo modo, el tiempo de conducción (el tiempo típico que lleva conducir un coche a lo largo de un segmento de carretera), es un ejemplo de impedancia. Los tiempos de conducción pueden variar según el tipo de vehículo (por ejemplo, el tiempo que un camión tarda en viajar a lo largo de una ruta suele ser más largo que el de un coche) por lo que pueden existir muchos valores de impedancia que representan los tiempos de viaje para distintos tipos de vehículos. Los valores de la impedancia también pueden variar con el tiempo; el tráfico en directo y típico hace referencia a los valores de la impedancia dinámica. Cada recorrido a pie y segmento de carretera almacena al menos un valor de impedancia. Al realizar un análisis de red, los valores de impedancia se utilizan para calcular los mejores resultados, como buscar la ruta más corta (la ruta que minimiza la impedancia) entre dos puntos.

The impedanceAttributeName parameter can be specified using the following values:

  • TravelTime: se utilizan datos de tráfico históricos y en directo. Esta opción resulta útil para modelar el tiempo que tardan los automóviles en desplazarse por carreteras a una hora concreta del día utilizando datos de velocidad del tráfico en directo si están disponibles. Si utiliza TravelTime, si lo desea puede definir el parámetro de atributos TravelTime::Vehicle Maximum Speed (km/h) para especificar los límites físicos de la velocidad a la que el vehículo es capaz de desplazarse.
  • Minutos: no se utilizan datos de tráfico en directo, sino velocidades medias históricas de los datos de automóviles.
  • TruckTravelTime: se utilizan datos de tráfico históricos y en directo, pero se establece una velocidad máxima al límite de velocidad especificado para camiones. Resulta útil para modelar el tiempo que tardan los camiones en desplazarse por carreteras a una hora concreta del día. Si utiliza TruckTravelTime, si lo desea puede definir el parámetro de atributos TruckTravelTime::Vehicle Maximum Speed (km/h) para especificar los límites físicos de la velocidad a la que el camión es capaz de desplazarse.
  • TruckMinutes: no utiliza datos de tráfico en directo, pero sí utiliza las velocidades más bajas del promedio histórico para automóviles y los límites de velocidad permitidos para camiones.
  • WalkTime: el valor predeterminado es una velocidad de 5 km/h en todas las carreteras y caminos, pero se puede configurar mediante el parámetro de atributos WalkTime::Walking Speed (km/h).
  • Millas: las mediciones de longitud de carreteras se almacenan en millas y se pueden utilizar para realizar análisis según la distancia más corta.
  • Kilómetros: las mediciones de longitud de carreteras se almacenan en kilómetros y se pueden utilizar para realizar análisis según la distancia más corta.
Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

accumulateAttributeNames

Utilice este parámetro para especificar si el servicio acumulará valores además del valor especificado de impedanceAttributeName. Por ejemplo, si impedanceAttributeName tiene el valor TravelTime, el servicio calculará el tiempo de viaje total para la ruta. Sin embargo, si también desea calcular la distancia total de la ruta en millas, puede especificar Miles como el valor del parámetro accumulateAttributeNames.

Especifique el valor del parámetro como una lista de nombres separados por comas. Los valores del parámetro son los mismos que los del parámetro impedanceAttributeName. Por ejemplo, accumulateAttributeNames=Miles,Kilometers indica que el coste total de la ruta también se calculará en millas y kilómetros.

Nota:

Los valores especificados para el parámetro accumulateAttributeNames solo se utilizan como referencia. El servicio siempre usa impedanceAttributeName para encontrar las rutas mejores.

Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

restrictionAttributeNames

Utilice este parámetro para especificar las restricciones que cumplirá el servicio. Una restricción representa una preferencia o un requisito de conducción. En la mayoría de casos, las restricciones ocasionan la prohibición de carreteras o rutas, pero también pueden hacer que se eviten o se les dé preferencia. Por ejemplo, utilizar la restricción Avoid Toll Roads dará como resultado una ruta que incluirá las carreteras de peaje solo si se requiere viajar por ellas para llegar a una parada. Utilice Height Restriction para trazar una ruta evitando cualquier lugar con una distancia al suelo que sea inferior a la altura del vehículo. Si el vehículo transporta materiales peligrosos, puede utilizar la restricción Any Hazmat Prohibited para impedir que los materiales se transporten por carreteras donde sea ilegal hacerlo.

Precaución:

El valor de este parámetro, independientemente de si utiliza el valor predeterminado o establece explícitamente un valor, se invalida si se entrega en travelMode.

Este valor de parámetro se especifica como una lista de nombres de restricción separados por comas. El valor none indica que no se utilizarán restricciones para buscar las rutas más cortas.

The restrictionAttributeNames parameter can be specified using the following values:

  • Prohibidos todos los materiales peligrosos: los resultados no incluirán las carreteras en las que esté prohibido el transporte de cualquier tipo de material peligroso.

  • Evitar carreteras VAO: el resultado evitará las carreteras designadas exclusivamente para los vehículos compartidos.

  • Evitar carriles rápidos: los resultados evitarán las carreteras diseñadas como carriles rápidos.

  • Evitar transbordadores: los resultados evitarán los transbordadores.

  • Evitar puertas: los resultados evitarán las carreteras en las que haya puertas, como los accesos con clave o las entradas controladas por guardas.

  • Evitar carreteras con acceso limitado: los resultados evitarán las carreteras que sean de acceso limitado.

  • Evitar carreteras privadas: los resultados evitarán las carreteras que no sean de propiedad pública y no se mantengan con recursos públicos.

  • Evitar las carreteras no aptas para peatones: los resultados evitarán las carreteras que no sean aptas para peatones.

  • Evitar tramos de escalera: los resultados evitarán todos los tramos de escalera de una ruta adecuada para peatones.

  • Evitar carreteras de peaje: los resultados evitarán todas las carreteras de peaje para automóviles.

  • Evitar carreteras de peaje para camiones: los resultados evitarán todas las carreteras de peaje para camiones.

  • Evitar carreteras con restricciones para camiones: los resultados evitarán las carreteras donde no estén permitidos los camiones excepto para hacer entregas.

  • Evitar carreteras sin pavimentar: los resultados evitarán las carreteras que no estén pavimentadas (de tierra, de gravilla, etc.).

  • Restricción de número de ejes: los resultados no incluirán carreteras en las que los camiones con el número especificado de ejes estén prohibidos. El número de ejes se puede especificar mediante el parámetro de restricción Número de ejes.

  • Conduciendo autobús: los resultados no incluirán carreteras en las que estén prohibidos los autobuses. Usar esta restricción también garantizará que los resultados respetarán las calles con sentido único.

  • Conduciendo taxi: los resultados no incluirán carreteras en las que estén prohibidos los taxis. Usar esta restricción también garantizará que los resultados respetarán las calles con sentido único.

  • Conduciendo camión: los resultados no incluirán carreteras en las que estén prohibidos los camiones. Usar esta restricción también garantizará que los resultados respetarán las calles con sentido único.

  • Conduciendo automóvil: los resultados no incluirán carreteras en las que estén prohibidos los automóviles. Usar esta restricción también garantizará que los resultados respetarán las calles con sentido único.

  • Conduciendo vehículo de emergencia: los resultados no incluirán carreteras en las que estén prohibidos los vehículos de emergencia. Usar esta restricción también garantizará que los resultados respetarán las calles con sentido único.

  • Restricción de altura: los resultados no incluirán las carreteras en las que la altura del vehículo supere la altura máxima permitida para la carretera. La altura del vehículo se puede especificar usando el parámetro de restricción Altura del vehículo (metros).

  • Restricción de longitud de eje de dirección a eje trasero: los resultados no incluirán las carreteras en las que la longitud del vehículo supere la distancia máxima permitida entre el eje de dirección y el eje trasero para la carretera. La longitud entre el eje de dirección y el eje trasero se puede especificar usando el parámetro de restricción Longitud de eje de dirección a eje trasero del vehículo (metros).

  • Restricción de longitud: los resultados no incluirán las carreteras en las que la longitud del vehículo supere la longitud máxima permitida para la carretera. La longitud del vehículo se puede especificar usando el parámetro de restricción Longitud del vehículo (metros).

  • Preferido para peatones: los resultados utilizarán rutas preferidas adecuadas para la navegación para peatones.

  • En moto: los resultados no incluirán carreteras en las que estén prohibidas las motocicletas. Usar esta restricción también garantizará que los resultados respetarán las calles con sentido único.

  • Prohibidas las carreteras en obras: los resultados no incluirán carreteras que estén en obras.

  • Prohibidos los camiones o tractores con uno o varios remolques: los resultados no incluirán las carreteras en las que estén prohibidos los camiones o tractores con uno o varios remolques.

  • Prohibidos los vehículos de un solo eje: los resultados no incluirán carreteras en las que los vehículos de un solo eje estén prohibidos.

  • Prohibidos los vehículos de doble eje: los resultados no incluirán carreteras en las que los vehículos de doble eje estén prohibidos.

  • Prohibido el tráfico de paso: los resultados no incluyen las carreteras donde no se permita el tráfico de paso (tráfico no local).

  • Restricción de camiones con remolques: los resultados no incluirán carreteras en las que los camiones con el número especificado de remolques estén prohibidos. El número de remolques del camión se puede especificar mediante el parámetro de restricción Número de remolques del camión.

  • Usar rutas preferidas para materiales peligrosos: los resultados darán prioridad a las carreteras designadas para el transporte de materiales peligrosos.

  • Usar rutas preferidas para camiones: los resultados darán prioridad a las carreteras que se hayan diseñado como rutas para camiones, como las que forman parte de la red nacional descrita en la National Surface Transportation Assistance Act de Estados Unidos, las carreteras que se hayan diseñado como rutas de camiones en un estado o una provincia, o aquellas que prefieran los camioneros cuando conducen por un área.

  • A pie: los resultados no incluirán carreteras en las que estén prohibidos los peatones.

  • Restricción de peso: los resultados no incluirán las carreteras en las que el peso del vehículo supere el peso máximo permitido para la carretera. El peso del vehículo se puede especificar usando el parámetro de restricción Peso del vehículo (kilogramos).

  • Restricción de peso por eje: los resultados no incluirán las carreteras en las que el peso del vehículo por eje supere el peso máximo permitido por eje para la carretera. El peso por eje del vehículo se puede especificar usando el parámetro de restricción Peso por eje del vehículo (kilogramos).

  • Restricción de ancho: los resultados no incluirán las carreteras en las que el ancho del vehículo supere el ancho máximo permitido para la carretera. El ancho del vehículo se puede especificar usando el parámetro de restricción Ancho del vehículo (metros).

Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

El atributo de restricción Driving a Delivery Vehicle ya no está disponible. El servicio ignorará esta restricción, puesto que no es válida. Para obtener unos resultados similares, use el atributo de restricción Driving a Truck junto con el atributo de restricción Avoid Truck Restricted Roads.

El valor de parámetro restrictionAttributeName se especifica como una lista de nombres de restricción. Un valor de null indica que no se utilizarán restricciones para buscar la ruta mejor, sino solo si travelMode tiene el valor null.

attributeParameterValues

Utilice este parámetro para especificar valores adicionales requeridos por un atributo o restricción, como por ejemplo para especificar si la restricción prohíbe, evita o prefiere circular en carreteras restringidas. Si la restricción se ha ideado para evitar carreteras o darles preferencia, puede especificar en qué medida se deben evitar o se les debe dar preferencia usando este parámetro. Por ejemplo, puede elegir que nunca se usen carreteras de peaje, que se eviten en la medida de lo posible o que se les dé preferencia.

Precaución:

El valor de este parámetro, independientemente de si utiliza el valor predeterminado o establece explícitamente un valor, se invalida si se entrega en travelMode.

Este valor de parámetro se especifica como una matriz de objetos, cada uno con las siguientes propiedades:

  • attributeName: el nombre de la restricción.

  • parameterName: el nombre del parámetro asociado con la restricción. Una restricción puede tener una o más propiedades de parameterName.

  • value: el valor de parameterName.

La mayoría de parámetros de atributos están relacionados con los atributos de restricción en restrictionAttributeNames. Cada restricción tiene por lo menos un parámetro de atributos llamado Restriction Usage, que especifica si la restricción prohíbe, evita o prefiere los viajes por las carreteras asociadas con la restricción y en qué medida las carreteras se evitan o tienen preferencia. Es posible asignar al parámetro Restriction Usage cualquiera de los siguientes valores de cadena de caracteres o sus valores numéricos equivalentes entre paréntesis:

  • Prohibited (-1): está prohibido viajar por las carreteras que presenten esta restricción.
  • Avoid_High (5): es muy improbable que el servicio incluya en la ruta las carreteras asociadas a esta restricción.
  • Avoid_Medium (2): es improbable que el servicio incluya en la ruta las carreteras asociadas a esta restricción.
  • Avoid_Low (1.3): es algo improbable que el servicio incluya en la ruta las carreteras asociadas a esta restricción.
  • Prefer_Low (0.8): es algo probable que el servicio incluya en la ruta las carreteras asociadas a esta restricción.
  • Prefer_Medium (0.5): es probable que el servicio incluya en la ruta las carreteras asociadas a esta restricción.
  • Prefer_High (0.2): es muy probable que el servicio incluya en la ruta las carreteras asociadas a esta restricción.

Nota:

El parámetro restrictionAttributeNames está asociado con attributeParameterValues. El valor de parámetro del atributo de restricción se especifica como parte de attributeParameterValues. Cada restricción tiene al menos un parámetro llamado Restriction Usage que especifica si se prohíbe el viaje por las carreteras que tienen la restricción, se debe evitar o se debe preferir. Para las últimas dos opciones, también especifica el grado en que se evitan o prefieren las carreteras.

En la siguiente tabla, se muestran los nombres de parámetro de atributos y los valores predeterminados de los parámetros.

Sugerencia:

Para utilizar el valor predeterminado para una restricción, no es necesario especificar attributeName, parameterName y value como parte del parámetro attributeParameterValues.

Nombre de restricciónNombre del parámetro de restricciónValor predeterminado del parámetro de restricción

Prohibido cualquier material peligroso

Uso con restricciones

Prohibido

Evitar carreteras VAO

Uso con restricciones

Prohibido

Evitar carriles rápidos

Uso con restricciones

Prohibido

Evitar ferries

Uso con restricciones

Avoid_Medium

Evitar barreras

Uso con restricciones

Avoid_Medium

Evitar carreteras de acceso limitado

Uso con restricciones

Avoid_Medium

Evitar carreteras privadas

Uso con restricciones

Avoid_Medium

Evitar las carreteras no aptas para peatones

Uso con restricciones

Avoid_High

Evitar tramos de escalera

Uso con restricciones

Avoid_High

Evitar carreteras de peaje

Uso con restricciones

Avoid_Medium

Evitar carreteras de peaje para camiones

Uso con restricciones

Avoid_Medium

Evitar carreteras con restricciones para camiones

Uso con restricciones

Avoid_High

Evitar carreteras sin pavimentar

Uso con restricciones

Avoid_High

Restricción de número de ejes

Número de ejes

0

Uso con restricciones

Prohibido

Conducción de un autobús

Uso con restricciones

Prohibido

Conducción de un taxi

Uso con restricciones

Prohibido

Conducción de un camión

Uso con restricciones

Prohibido

Conducción de un automóvil

Uso con restricciones

Prohibido

Conducción de un vehículo de emergencia

Uso con restricciones

Prohibido

Restricción de altura

Uso con restricciones

Prohibido

Altura del vehículo (metros)

0

Restricción de longitud de eje de dirección a eje trasero

Uso con restricciones

Prohibido

Longitud entre el bulón de arrastre y el eje trasero del vehículo (metros)

0

Restricción de longitud

Uso con restricciones

Prohibido

Longitud del vehículo (metros)

0

Preferido para peatones

Uso con restricciones

Prefer_Low

Conducción de una motocicleta

Uso con restricciones

Prohibido

Carreteras en obras prohibidas

Uso con restricciones

Prohibido

Prohibidos los camiones o tractores con uno o varios remolques

Uso con restricciones

Prohibido

Prohibidos los vehículos con un solo eje

Uso con restricciones

Prohibido

Prohibidos los vehículos con eje en tándem

Uso con restricciones

Prohibido

Prohibido el tráfico de paso

Uso con restricciones

Avoid_High

Restricción de camiones con remolques

Uso con restricciones

Prohibido

Número de remolques del camión

0

Usar rutas preferidas para materiales peligrosos

Uso con restricciones

Prefer_Medium

Usar rutas preferidas para camiones

Uso con restricciones

Prefer_High

Caminata

Uso con restricciones

Prohibido

WalkTime

Velocidad a pie (km/h)

5

Restricción de peso

Uso con restricciones

Prohibido

Peso del vehículo (kilogramos)

0

Restricción de peso por eje

Uso con restricciones

Prohibido

Peso del vehículo por eje (kilogramos)

0

Restricción de ancho

Uso con restricciones

Prohibido

Anchura del vehículo (metros)

0

Nota:

Estos valores son específicos de los servicios publicados con los datos de ArcGIS StreetMap Premium. Los valores serán diferentes si utiliza otros datos para el análisis.

Syntax example for attributeParameterValues

Sintaxis para especificar attributeParameterValues
[
    {
        "attributeName": "<attribute1>",
        "parameterName": "<parameter1>",
        "value": "<value1>"
    },
    {
        "attributeName": "<attribute2>",
        "parameterName": "<parameter2>",
        "value": "<value2>"
    }
]

Example for attributeParameterValues

Ejemplo: especificar la altura y el peso del vehículo y una preferencia alta por el uso de rutas designadas para camiones

En este ejemplo, se muestra cómo especificar la altura y el peso del vehículo para utilizarlo con las restricciones de altura y peso respectivamente, junto con una preferencia alta por la inclusión de las rutas designadas para camiones. Da como resultado una ruta que no contiene carreteras en las que la distancia al suelo bajo pasos elevados o túneles sea menor que la altura del vehículo. La ruta tampoco incluirá carreteras con puentes de carga limitada o carreteras locales que prohíban los vehículos pesados si el peso del vehículo supera el peso máximo permitido. Sin embargo, la ruta incluirá la mayor cantidad de carreteras posible que estén designadas como rutas preferidas para camiones.

No se especifica el parámetro Restriction Usage para Height Restriction y Weight Restriction, ya que se utilizará el valor predeterminado de Prohibit para estos parámetros de restricción.


attributeParameterValues=
[
    {
        "attributeName": "Height Restriction",
        "parameterName": "Vehicle Height (meters)",
        "value": 4.12
    },
    {
        "attributeName": "Weight Restriction",
        "parameterName": "Vehicle Weight (kilograms)",
        "value": 36287
    },
    {
        "attributeName": "Use Preferred Truck Routes",
        "parameterName": "Restriction Usage",
        "value": "Prefer_High"
    }
]

barriers

Utilice este parámetro para especificar uno o varios puntos que actuarán como restricciones temporales o representen el tiempo o la distancia adicionales que puede que se necesiten para viajar en las calles subyacentes. Por ejemplo, una barrera de punto se puede usar para representar un árbol caído en una calle o el retraso acumulado en un cruce de ferrocarril.

Puede utilizar una sintaxis simple basada en comas y en punto y coma si pasa las ubicaciones de barrera de punto con sus valores de longitud y latitud en el sistema de coordenadas WGS84 y no necesita pasar campos adicionales para cada ubicación.

Sintaxis simple para barreras

barriers=x1,y1; x2, y2; ...; xn, yn

Ejemplo con la sintaxis simple

barriers=-117.1957,34.0564; -117.184,34.0546

You can specify barrier geometries as well as attributes using a more comprehensive JSON structure that references a set of features. The property is optional however, the JSON structure must specify either the url, features, or layer property:

  • url: especifique una solicitud de consulta REST para cualquier entidad, mapa o servicio de geoprocesamiento de ArcGIS Server que devuelva un conjunto de entidades JSON.

    La estructura JSON puede incluir esta propiedad:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • features: especifique una matriz de entidades.

    Cada entidad de la matriz representa una barrera de punto y contiene los siguientes campos:

    • geometry: especifique la geometría de punto de entrada que contenga las propiedades x y y junto con la propiedad spatialReference. Si la propiedad spatialReference se define para todo el JSON, no es necesario que defina esta propiedad para cada geometría. Al hacerlo, se reduce el tamaño del JSON de entrada si la entrada tiene muchas entidades y también mejora el rendimiento. Esta propiedad no es necesaria si las coordenadas están en la referencia espacial predeterminada, WGS84. Si las coordenadas están en una referencia espacial diferente, debe especificar el Id. conocido de la referencia espacial (WKID). Consulte Utilizar referencias espaciales para buscar valores de WKID.
      Sugerencia:

      Se recomienda especificar explícitamente el valor de spatialReference y especificarlo para todo el JSON en lugar de para cada geometría individual.

    • attributes: especifique cada atributo como un par de clave-valor donde la clave es el nombre de un campo dado y el valor es el valor de atributo del campo correspondiente.

    The JSON structure can include the following property:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • layer—Specify a feature layer in the map service. Attribute and spatial filters can also be applied on the layer. The JSON structure can include the following properties:

    • type—The type should be set to layer to indicate that the user is specifying the point barriers by referencing a layer.
    • layerName: el nombre o Id. de la capa de datos en el servicio de mapas al que se hace referencia.
    • where (opcional): una cláusula WHERE para el filtro de consulta. Se permite cualquier cláusula WHERE de SQL legal que funcione en los campos de la capa.
    • geometry (opcional): la geometría que se aplica como filtro espacial. La estructura de la geometría coincide con la estructura de los objetos de geometría JSON devueltos por la ArcGIS REST API.

      El tipo de geometría se especifica usando la propiedad geometryType.

    • geometryType (opcional): el tipo de geometría especificado por la propiedad geometry. Los tipos de geometría compatibles son sobre, punto, línea y polígono. El tipo de geometría predeterminado es esriGeometryEnvelope.

      Valores: esriGeometryPoint | esriGeometryMultipoint | esriGeometryPolyline | esriGeometryPolygon | esriGeometryEnvelope

    • spatialRel (opcional): la relación espacial que se aplicará en geometry de entrada. Entre las relaciones espaciales admitidas se incluyen interseca, contiene, el sobre interseca, dentro de, etc. La relación espacial predeterminada es esriSpatialRelIntersects.

      Valores: esriSpatialRelIntersects | esriSpatialRelContains | esriSpatialRelCrosses | esriSpatialRelEnvelopeIntersects | esriSpatialRelIndexIntersects | esriSpatialRelOverlaps | esriSpatialRelTouches | esriSpatialRelWithin

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

Attribute for barriers

Al especificar el parámetro barriers usando una estructura JSON, puede especificar información adicional sobre las barreras (por ejemplo, el tipo de barrera) mediante el uso de atributos. El parámetro barriers se puede especificar con los siguientes atributos:

Name

El nombre de la barrera.

ObjectID

The ObjectID of the barrier. The ObjectID is a unique identifier for the barrier. The ObjectID of the input barrier is included in the output barrier (as the ObjectID field) and can be used to join additional information from analysis outputs to the attribute of your barriers. If the ObjectID is not specified, a unique ID is automatically generated in the output.

SourceID

El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

SourceOID

El ObjectID de la entidad del origen donde se ubica el punto de entrada.

PosAlong

La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

SideOfEdge

El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

Nota:

SourceID, SourceOID, PosAlong y SideOfEdge son campos de ubicación. Si estos campos están presentes en la entrada, el análisis ubicará la entrada basándose en estos campos, de lo contrario, el análisis calculará la ubicación de entrada en función de la geometría de la entrada. Sin embargo, estos campos no son obligatorios.

BarrierType

Especifica si la barrera de punto restringe el recorrido completamente o agrega tiempo o distancia cuando se cruza. El valor de este atributo se especifica como uno de los siguientes enteros (use el código numérico, no el nombre entre paréntesis):

  • 0 (Restricción): prohíbe viajar por la barrera. La barrera se conoce como barrera de punto de restricción, ya que actúa como una restricción.

    Dos mapas demuestran cómo afecta una barrera de punto de restricción a un análisis de ruta.
    El primer mapa muestra la ruta más corta entre dos paradas sin ninguna barrera de punto de restricción. El segundo mapa tiene una carretera que está bloqueado por un árbol caído, de modo que la ruta más corta entre los mismos puntos es más larga.

  • 2 (Coste agregado): viajar a través de la barrera aumenta el tiempo o la distancia de viaje en la cantidad especificada en el atributo Attr_[Cost]. Este tipo de barreras se conoce como una barrera de puntos de coste agregado.
    Dos mapas demuestran cómo afectan las barreras de punto de coste agregado a un análisis de ruta.
    El primer mapa muestra la ruta más corta entre dos paradas sin ninguna barrera de punto de coste agregado. En el segundo mapa, el tiempo de viaje de la parada 1 a la parada 2 es el mismo pasando por el extremo norte del bloqueo o por el extremo sur; sin embargo, dado que al cruzar las vías del ferrocarril se incurre en una penalización de tiempo (modelada con barreras de punto de coste agregado), se elige la ruta con un solo cruce de ferrocarril. El coste de cruzar la barrera se suma al tiempo de viaje agregado de la ruta resultante.

Nota:

No existe ningún tipo de barrera de punto que tenga el valor 1 para el atributo BarrierType.

FullEdge

Especifica cómo se aplican las barreras de punto de restricción a los elementos de eje durante el análisis. El valor de campo se especifica como uno de los siguientes enteros (use el código numérico, no el nombre entre paréntesis):

  • 0 (Falso): permite viajar por el eje hasta la barrera, pero no a través de ella. Este es el valor predeterminado.
  • 1 (Verdadero): restringe el viaje a cualquier punto del eje asociado.

Attr_[Cost]

Indica cómo el coste (tiempo o distancia) se agrega cuando se atraviesa la barrera. Este atributo solo se aplica a barreras de punto de coste añadido. El valor del atributo debe ser mayor o igual que cero.

Syntax examples for barriers

Sintaxis para especificar barreras utilizando una estructura JSON para entidades


{
  "spatialReference": {
    "wkid": <wkid>,
    "latestWkid": <wkid>
  },
  "features": [
    {
      "geometry": {
        "x": <x>,
        "y": <y>
      },
      "attributes": {
        "<field1>": <value11>,
        "<field2>": <value12>
      }
    },
    {
      "geometry": {
        "x": <x>,
        "y": <y>
      },
      "attributes": {
        "<field1>": <value21>,
        "<field2>": <value22>
      }
    }
  ],
  "doNotLocateOnRestrictedElements": true | false
}

Sintaxis para especificar barreras utilizando una dirección URL a una respuesta JSON


{
  "url": "<url>"
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying point barriers using a layer

{ 
  "type" : "layer",
  "layerName" : "<layerName>",
  "where" : "<whereClause>",
  "geometry" : {<geometry>},
  "geometryType" : "<geometryType>",
  "spatialRel" : "<spatialRel>"
  "doNotLocateOnRestrictedElements": true | false
}

Examples for barriers

Ejemplo 1: especificar una barrera de punto de coste agregado utilizando una estructura JSON

En este ejemplo, se muestra cómo utilizar una barrera de punto de coste añadido para modelar un retraso de cinco minutos en un cruce de ferrocarril. El atributo BarrierType se utiliza para especificar que la barrera de punto es del tipo de coste añadido y el atributo Attr_TravelTime se utiliza para especificar el retraso en minutos.


{
  "spatialReference": {
    "wkid": 4326
  },
  "features": [
    {
      "geometry": {
        "x": -122.053461,
        "y": 37.541479
      },
      "attributes": {
        "Name": "Haley St rail road crossing",
        "BarrierType": 2,
        "Attr_TravelTime": 5
      }
    }
  ]
}

Ejemplo 2: especificar una barrera de punto de restricción utilizando una URL

La dirección URL hace una consulta para algunas entidades desde un servicio de mapas. También es posible especificar una URL que consulte entidades desde un servicio de entidades.


{
  "url": "https://machine.domain.com/webadaptor/rest/services/Network/USA/MapServer/0/query?where=1%3D1&returnGeometry=true&f=json"
}

Example 3: Specifying a point barrier using a layer

{ 
  "type" : "layer",
  "layerName" : "TrafficAccidents",
  "where" : "SEVERITY > 0"
}

polylineBarriers

Utilice este parámetro para especificar una o varias líneas que prohíban viajar a cualquier ubicación en la que las líneas se intersequen con las calles. Por ejemplo, un desfile o una protesta que bloquee el tráfico por varios segmentos de calle se puede modelar con una barrera de línea. Una barrera de línea también puede cercar rápidamente varios caminos para que no se puedan atravesar, alejando así las posibles rutas de las partes no deseadas de la red de calles.

Dos mapas demuestran cómo afecta una barrera de línea a la búsqueda de una ruta entre dos paradas.
El primer mapa permite visualizar la ruta más corta entre dos paradas. El segundo mapa muestra la ruta más corta si hay varias calles bloqueadas por una barrera de polilínea.

You can specify polyline barrier geometries as well as attributes using a JSON structure that references a set of features. The property is optional however, the JSON structure must specify either the url, features, or layer property:

  • url: especifique una solicitud de consulta REST para cualquier entidad, mapa o servicio de geoprocesamiento de ArcGIS Server que devuelva un conjunto de entidades JSON.

    La estructura JSON puede incluir esta propiedad:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • features: especifique una matriz de entidades.

    Cada entidad de la matriz representa una barrera de polilínea y contiene los siguientes campos:

    • geometry: especifique la geometría de punto de entrada que contenga las propiedades x y y junto con la propiedad spatialReference. Si la propiedad spatialReference se define para todo el JSON, no es necesario que defina esta propiedad para cada geometría. Al hacerlo, se reduce el tamaño del JSON de entrada si la entrada tiene muchas entidades y también mejora el rendimiento. Esta propiedad no es necesaria si las coordenadas están en la referencia espacial predeterminada, WGS84. Si las coordenadas están en una referencia espacial diferente, debe especificar el Id. conocido de la referencia espacial (WKID). Consulte Utilizar referencias espaciales para buscar valores de WKID.
      Sugerencia:

      Se recomienda especificar explícitamente el valor de spatialReference y especificarlo para todo el JSON en lugar de para cada geometría individual.

    • attributes: especifique cada atributo como un par de clave-valor donde la clave es el nombre de un campo dado y el valor es el valor de atributo del campo correspondiente.

    The JSON structure can include the following property:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • layer—Specify a feature layer in the map service. Attribute and spatial filters can also be applied on the layer. The JSON structure can include the following properties:

    • type—The type should be set to layer to indicate that the user is specifying the polyline barriers by referencing a layer.
    • layerName: el nombre o Id. de la capa de datos en el servicio de mapas al que se hace referencia.
    • where (opcional): una cláusula WHERE para el filtro de consulta. Se permite cualquier cláusula WHERE de SQL legal que funcione en los campos de la capa.
    • geometry (opcional): la geometría que se aplica como filtro espacial. La estructura de la geometría coincide con la estructura de los objetos de geometría JSON devueltos por la ArcGIS REST API.

      El tipo de geometría se especifica usando la propiedad geometryType.

    • geometryType (opcional): el tipo de geometría especificado por la propiedad geometry. Los tipos de geometría compatibles son sobre, punto, línea y polígono. El tipo de geometría predeterminado es esriGeometryEnvelope.

      Valores: esriGeometryPoint | esriGeometryMultipoint | esriGeometryPolyline | esriGeometryPolygon | esriGeometryEnvelope

    • spatialRel (opcional): la relación espacial que se aplicará en geometry de entrada. Entre las relaciones espaciales admitidas se incluyen interseca, contiene, el sobre interseca, dentro de, etc. La relación espacial predeterminada es esriSpatialRelIntersects.

      Valores: esriSpatialRelIntersects | esriSpatialRelContains | esriSpatialRelCrosses | esriSpatialRelEnvelopeIntersects | esriSpatialRelIndexIntersects | esriSpatialRelOverlaps | esriSpatialRelTouches | esriSpatialRelWithin

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

Attributes for polylineBarriers

Al especificar el parámetro polylineBarriers usando una estructura JSON, el parámetro se puede especificar con el siguiente atributo:

Name

El nombre de la barrera.

ObjectID

The ObjectID of the line barrier. The ObjectID is a unique identifier for the line barrier. The ObjectID of the input line barrier is included in the output line barrier (as the ObjectID field) and can be used to join additional information from analysis outputs to the attribute of your line barriers. If the ObjectID is not specified, a unique ID is automatically generated in the output.

SourceID

El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

SourceOID

El ObjectID de la entidad del origen donde se ubica el punto de entrada.

PosAlong

La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

SideOfEdge

El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

Nota:

SourceID, SourceOID, PosAlong y SideOfEdge son campos de ubicación. Si estos campos están presentes en la entrada, el análisis ubicará la entrada basándose en estos campos, de lo contrario, el análisis calculará la ubicación de entrada en función de la geometría de la entrada. Sin embargo, estos campos no son obligatorios.

BarrierType

Especifique si la barrera restringe el recorrido completamente o escala el tiempo o la distancia cuando se atraviesa. El valor de este atributo se especifica como uno de los siguientes enteros (use el código numérico, no el nombre entre paréntesis):

  • 0 (Restricción): prohíbe viajar por la barrera. La barrera se conoce como barrera de línea de restricción, ya que actúa como una restricción.
  • 1 (Coste en escala): escala el tiempo o la distancia requeridos para recorrer las calles subyacentes por un factor especificado mediante el atributo Attr_[Cost].

Attr_[Cost]

Este atributo es específico de las barreras con coste en escala. Es el factor por el que se multiplica el coste de los ejes subyacentes a la barrera.

Syntax examples for polylineBarriers

Sintaxis para especificar barreras de polilínea utilizando una estructura JSON para entidades


{
  "spatialReference": {
    "wkid": <wkid>,
    "latestWkid": <wkid>
  },
  "features": [
    {
      "geometry": {
        "paths": [
          [
            [<x11>,<y11>],
            [<x12>,<y12>]
          ],
          [
            [<x21>,<y21>],
            [<x22>,<y22>]
          ]
        ],
      },
      "attributes": {
        "<field1>": <value11>,
        "<field2>": <value12>
      }
    },
    {
      "geometry": {
        "paths": [
          [
            [<x11>,<y11>],
            [<x12>,<y12>]
          ],
          [
            [<x21>,<y21>],
            [<x22>,<y22>]
          ]
        ]
      },
      "attributes": {
        "<field1>": <value21>,
        "<field2>": <value22>
      }
    }
  ],
  "doNotLocateOnRestrictedElements": true | false
}

Sintaxis para especificar barreras de polilínea utilizando una dirección URL que devuelve una respuesta JSON


{
  "url": "<url>"
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying polyline barriers using a layer

{ 
  "type" : "layer",
  "layerName" : "<layerName>",
  "where" : "<whereClause>",
  "geometry" : {<geometry>},
  "geometryType" : "<geometryType>",
  "spatialRel" : "<spatialRel>"
  "doNotLocateOnRestrictedElements": true | false
}

Examples for polylineBarriers

Ejemplo 1: especificar barreras de polilínea utilizando una estructura JSON

Este ejemplo muestra cómo agregar dos líneas como barreras de polilínea para restringir el viaje por las calles que se intersecan con las líneas. La barrera 1 es una entidad de línea de una sola parte compuesta por dos puntos. La barrera 2 es una entidad de línea de dos partes. La primera parte está compuesta por tres puntos y la segunda parte está compuesta por dos puntos.


{
  "spatialReference": {
    "wkid": 102100
  },
  "features": [
    {
      "geometry": {
        "paths": [
          [
            [-10804823.397,3873688.372],
            [-10804811.152,3873025.945]
          ]
        ]
      },
      "attributes": {
        "Name": "Barrier 1"
      }
    },
    {
      "geometry": {
        "paths": [
          [
            [-10804823.397,3873688.372],
            [-10804807.813,3873290.911],
            [-10804811.152,3873025.945]
          ],
          [
            [-10805032.678,3863358.76],
            [-10805001.508,3862829.281]
          ]
        ]
      },
      "attributes": {
        "Name": "Barrier 2"
      }
    }
  ]
}

Ejemplo 2: especificar una barrera de polilínea utilizando una URL

La dirección URL hace una consulta para algunas entidades desde un servicio de mapas. También es posible especificar una URL que consulte entidades desde un servicio de entidades.


{
  "url": "https://machine.domain.com/webadaptor/rest/services/Network/USA/MapServer/6/query?where=1%3D1&returnGeometry=true&f=json"
}

Example 3:Specifying polyline barrier using a layer

{ 
  "type" : "layer",
  "layerName" : "PolylineBarrier"
}

polygonBarriers

Utilice este parámetro para especificar polígonos que restrinjan completamente el viaje o ajusten de una forma proporcional el tiempo o la distancia que se requieren para viajar por las calles que se intersecan con los polígonos.

You can specify polygon barrier geometries as well as attributes using a JSON structure that references a set of features. The property is optional however, the JSON structure must specify either the url, features, or layer property:

  • url: especifique una solicitud de consulta REST para cualquier entidad, mapa o servicio de geoprocesamiento de ArcGIS Server que devuelva un conjunto de entidades JSON.

    La estructura JSON puede incluir esta propiedad:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • features: especifique una matriz de entidades.

    Cada entidad de la matriz representa una barrera de polígono y contiene los siguientes campos:

    • geometry: especifique la geometría de punto de entrada que contenga las propiedades x y y junto con la propiedad spatialReference. Si la propiedad spatialReference se define para todo el JSON, no es necesario que defina esta propiedad para cada geometría. Al hacerlo, se reduce el tamaño del JSON de entrada si la entrada tiene muchas entidades y también mejora el rendimiento. Esta propiedad no es necesaria si las coordenadas están en la referencia espacial predeterminada, WGS84. Si las coordenadas están en una referencia espacial diferente, debe especificar el Id. conocido de la referencia espacial (WKID). Consulte Utilizar referencias espaciales para buscar valores de WKID.
      Sugerencia:

      Se recomienda especificar explícitamente el valor de spatialReference y especificarlo para todo el JSON en lugar de para cada geometría individual.

    • attributes: especifique cada atributo como un par de clave-valor donde la clave es el nombre de un campo dado y el valor es el valor de atributo del campo correspondiente.

    The JSON structure can include the following property:

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

  • layer—Specify a feature layer in the map service. Attribute and spatial filters can also be applied on the layer. The JSON structure can include the following properties:

    • type—The type should be set to layer to indicate that the user is specifying the polygon barriers by referencing a layer.
    • layerName: el nombre o Id. de la capa de datos en el servicio de mapas al que se hace referencia.
    • where (opcional): una cláusula WHERE para el filtro de consulta. Se permite cualquier cláusula WHERE de SQL legal que funcione en los campos de la capa.
    • geometry (opcional): la geometría que se aplica como filtro espacial. La estructura de la geometría coincide con la estructura de los objetos de geometría JSON devueltos por la ArcGIS REST API.

      El tipo de geometría se especifica usando la propiedad geometryType.

    • geometryType (opcional): el tipo de geometría especificado por la propiedad geometry. Los tipos de geometría compatibles son sobre, punto, línea y polígono. El tipo de geometría predeterminado es esriGeometryEnvelope.

      Valores: esriGeometryPoint | esriGeometryMultipoint | esriGeometryPolyline | esriGeometryPolygon | esriGeometryEnvelope

    • spatialRel (opcional): la relación espacial que se aplicará en geometry de entrada. Entre las relaciones espaciales admitidas se incluyen interseca, contiene, el sobre interseca, dentro de, etc. La relación espacial predeterminada es esriSpatialRelIntersects.

      Valores: esriSpatialRelIntersects | esriSpatialRelContains | esriSpatialRelCrosses | esriSpatialRelEnvelopeIntersects | esriSpatialRelIndexIntersects | esriSpatialRelOverlaps | esriSpatialRelTouches | esriSpatialRelWithin

    • doNotLocateOnRestrictedElements (opcional): especifique si los elementos de red restringidos se considerarán al buscar ubicaciones de red. El valor predeterminado es true.

Attributes for polygonBarriers

Al especificar el parámetro polygonBarriers usando una estructura JSON, puede especificar información adicional sobre las barreras (por ejemplo, el tipo de barrera) mediante el uso de atributos. El parámetro polygonBarriers se puede especificar con los siguientes atributos:

Name

El nombre de la barrera.

ObjectID

The ObjectID of the polygon barrier. The ObjectID is a unique identifier for the polygon barrier. The ObjectID of the input polygon barrier is included in the output polygon barrier (as the ObjectID field) and can be used to join additional information from analysis outputs to the attribute of your polygon barriers. If the ObjectID is not specified, a unique ID is automatically generated in the output.

SourceID

El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

SourceOID

El ObjectID de la entidad del origen donde se ubica el punto de entrada.

PosAlong

La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

SideOfEdge

El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

Nota:

SourceID, SourceOID, PosAlong y SideOfEdge son campos de ubicación. Si estos campos están presentes en la entrada, el análisis ubicará la entrada basándose en estos campos, de lo contrario, el análisis calculará la ubicación de entrada en función de la geometría de la entrada. Sin embargo, estos campos no son obligatorios.

BarrierType

Utilice este parámetro para especificar polígonos que restrinjan completamente el viaje o ajusten de una forma proporcional el tiempo o la distancia que se requieren para viajar por las calles que se intersecan con los polígonos.

  • 0 (Restricción): prohíbe atravesar cualquier parte de la barrera. La barrera se conoce como barrera de polígono de restricción, ya que prohíbe viajar por las calles que se intersecan con la barrera. Un uso de este tipo de barrera consiste en modelar inundaciones cubriendo áreas de las calles que hacen inviables los viajes por esas calles.

    Este es el valor predeterminado.

    Dos mapas demuestran cómo afecta una barrera de polígono de restricción a la búsqueda de una ruta entre dos paradas.
    El primer mapa representa la ruta más corta entre dos paradas. El segundo mapa muestra una barrera de polígono que bloquea las calles inundadas, de modo que la ruta más corta entre las mismas dos paradas es diferente.

  • 1 (Coste en escala): escala el tiempo o la distancia requeridos para recorrer las calles subyacentes por un factor especificado mediante Attr_[Cost]. Si las calles están parcialmente cubiertas por la barrera, el tiempo o la distancia del viaje se prorratea y se ajusta. Por ejemplo, un factor de 0,25 significa que se espera que el viaje por las calles subyacentes sea cuatro veces más rápido de lo normal. Un factor de 3,0 significa que se espera que el viaje por las calles subyacentes dure tres veces más de lo normal. Este tipo de barrera se denomina barrera de polígono con coste en escala. Se puede utilizar para modelar tormentas que reducen las velocidades de viaje en regiones concretas, por ejemplo.

    Dos mapas demuestran cómo afecta una barrera de polígono de coste en escala a la búsqueda de una ruta entre dos paradas.
    El primer mapa muestra una ruta que va por condiciones meteorológicas adversas sin tener en cuenta el efecto que las carreteras en mal estado tienen en el tiempo de viaje. El segundo mapa muestra una barrera de polígono escalada que duplica el tiempo de viaje por las carreteras cubiertas por la tormenta. La ruta continúa atravesando el extremo sur de la tormenta, dado que es más rápido gastar tiempo conduciendo lentamente a través de una pequeña parte de la tormenta en lugar de rodearla conduciendo por completo. El servicio utiliza el tiempo de viaje modificado para calcular la ruta mejor, y el tiempo de viaje modificado se informa como el tiempo de viaje total en la respuesta.

Attr_[Cost]

Este es el factor por el cual se multiplica el coste de las calles que se intersecan con la barrera. Este atributo solo se aplica a barreras con coste en escala. El valor del atributo debe ser mayor que cero.

Syntax examples for polygonBarriers

Sintaxis para especificar barreras de polígono utilizando una estructura JSON para entidades


{
  "spatialReference": {
    "wkid": <wkid>,
    "latestWkid": <wkid>
  },
  "features": [
    {
      "geometry": {
        "rings": [
          [
            [<x11>,<y11>],
            [<x12>,<y12>],
            [<x11>,<y11>]
          ],
          [
            [<x21>,<y21>],
            [<x22>,<y22>],
            [<x21>,<y21>]
          ]
        ]
      },
      "attributes": {
        "<field1>": <value11>,
        "<field2>": <value12>
      }
    },
    {
      "geometry": {
        "rings": [
          [
            [<x11>,<y11>],
            [<x12>,<y12>],
            [<x11>,<y11>]
          ],
          [
            [<x21>,<y21>],
            [<x22>,<y22>],
            [<x21>,<y21>]
          ]
        ]
      },
      "attributes": {
        "<field1>": <value21>,
        "<field2>": <value22>
      }
    }
  ],
  "doNotLocateOnRestrictedElements": true | false
}

Sintaxis para especificar barreras de polígono utilizando una URL que devuelve una estructura JSON


{
  "url": "<url>"
  "doNotLocateOnRestrictedElements": true | false
}

Syntax for specifying polygon barriers using a layer

{ 
  "type" : "layer",
  "layerName" : "<layerName>",
  "where" : "<whereClause>",
  "geometry" : {<geometry>},
  "geometryType" : "<geometryType>",
  "spatialRel" : "<spatialRel>"
  "doNotLocateOnRestrictedElements": true | false
}

Examples for polygonBarriers

Ejemplo 1: especificar una barrera de polígono utilizando una estructura JSON

Este ejemplo muestra cómo agregar dos polígonos como barreras. El primer polígono, Flood zone, es una barrera de polígono de restricción que prohíbe viajar por las calles subyacentes. El polígono es una entidad poligonal de una sola parte compuesta por cuatro puntos. El segundo polígono, Zona de condiciones meteorológicas adversas, es una barrera de polígono con coste en escala que reduce el tiempo de viaje por las calles subyacentes a un tercio del valor original. El polígono es una entidad poligonal de dos partes. Ambas partes están compuestas de cuatro puntos.


{
  "spatialReference": {
    "wkid": 4326
  },
  "features": [
    {
      "geometry": {
        "rings": [
          [
            [-97.0634,32.8442],
            [-97.0554,32.84],
            [-97.0558,32.8327],
            [-97.0638,32.83],
            [-97.0634,32.8442]
          ]
        ]
      },
      "attributes": {
        "Name": "Flood zone",
        "BarrierType": 0
      }
    },
    {
      "geometry": {
        "rings": [
          [
            [-97.0803,32.8235],
            [-97.0776,32.8277],
            [-97.074,32.8254],
            [-97.0767,32.8227],
            [-97.0803,32.8235]
          ],
          [
            [-97.0871,32.8311],
            [-97.0831,32.8292],
            [-97.0853,32.8259],
            [-97.0892,32.8279],
            [-97.0871,32.8311]
          ]
        ]
      },
      "attributes": {
        "Name": "Severe weather zone",
        "BarrierType": 1,
        "Attr_TravelTime": 3
      }
    }
  ]
}

Ejemplo 2: especificar una barrera de polígono utilizando una URL

La dirección URL hace una consulta para algunas entidades desde un servicio de mapas. También es posible especificar una URL que consulte entidades desde un servicio de entidades.


{
  "url": "https://machine.domain.com/webadaptor/rest/services/Network/USA/MapServer/7/query?where=1%3D1&returnGeometry=true&f=json"
}

Example 3:Specifying a polygon barrier using a layer

{ 
  "type" : "layer",
  "layerName" : "PolygonBarrier"
}

returnOrigins

Use este parámetro para especificar si el servicio devolverá los orígenes. Los valores posibles para este parámetro son true o false. Un valor true indica que los orígenes usados como entradas se devuelven como parte de la propiedad origins en la respuesta JSON. El valor predeterminado de este parámetro es false.

Si especificó el valor del parámetro origins mediante una solicitud de consulta REST para cualquier servicio de geoprocesamiento, mapas o entidades de ArcGIS Server que devuelva un conjunto de entidades JSON, puede definir el parámetro returnOrigins como true para poder dibujar las ubicaciones de origen en la aplicación. También puede establecer la propiedad returnOrigins como true para determinar si se han ubicado correctamente las paradas en la red de calles o hubo otros errores al revisar la propiedad Status en la respuesta JSON.

returnDestinations

Use este parámetro para especificar si el servicio devolverá los destinos. Los valores posibles para este parámetro son true o false. Un valor true indica que los destinos usados como entradas se devuelven como parte de la propiedad destinations en la respuesta JSON. El valor predeterminado de este parámetro es false.

Si especificó el valor del parámetro destinations mediante una solicitud de consulta REST para cualquier servicio de geoprocesamiento, mapas o entidades de ArcGIS Server que devuelva un conjunto de entidades JSON, puede definir el parámetro returnDestinations como true para poder dibujar las ubicaciones de destino en la aplicación. También puede establecer la propiedad returnDestinations como true para determinar si se han ubicado correctamente los destinos en la red de calles o hubo otros errores al revisar la propiedad Status en la respuesta JSON.

returnBarriers

Especifique si el servicio devolverá barreras.

  • true: las barreras de punto de entrada se devuelven como parte de la propiedad barriers de la respuesta JSON.
  • false: no se devuelven barreras de punto. Esta es la opción predeterminada.

Para que este parámetro tenga efecto, debe especificar también un valor para el parámetro barriers.

Si especificó el valor del parámetro barriers mediante una solicitud de consulta REST para cualquier servicio de geoprocesamiento, mapas o entidades de ArcGIS Server que devuelva un conjunto de entidades JSON, puede definir el parámetro returnBarriers como true para poder dibujar las ubicaciones de barreras de punto en la aplicación. También puede definir la propiedad returnBarriers como true para ver dónde se han localizado las barreras en la red de calles o, si no estaban ubicadas, comprender cuál era el problema al revisar la propiedad Status de la respuesta JSON.

returnPolylineBarriers

Especifique si el servicio devolverá barreras de polilínea.

  • true: las barreras de polilínea de entrada se devuelven como parte de la propiedad polylineBarriers en la respuesta JSON.
  • false: no se devuelven barreras de polilínea. Esta es la opción predeterminada.

Para que este parámetro tenga efecto, debe especificar también un valor para el parámetro polylineBarriers.

Si especificó el valor del parámetro polylineBarriers mediante una solicitud de consulta REST para cualquier servicio de geoprocesamiento, mapas o entidades de ArcGIS Server que devuelva un conjunto de entidades JSON, puede definir el parámetro returnPolylineBarriers como true para poder dibujar las ubicaciones de barreras de polilínea en la aplicación.

returnPolygonBarriers

Especifique si el servicio devolverá barreras de polígono.

  • true: las barreras de polígono de entrada se devuelven como parte de la propiedad polygonBarriers en la respuesta JSON.
  • false: no se devuelven barreras de polígono. Esta es la opción predeterminada.

Para que este parámetro tenga efecto, debe especificar también un valor para el parámetro polygonBarriers.

Si especificó el valor del parámetro polygonBarriers mediante una solicitud de consulta REST para cualquier servicio de geoprocesamiento, mapas o entidades de ArcGIS Server que devuelva un conjunto de entidades JSON, puede definir el parámetro returnPolygonBarriers como true para poder dibujar las ubicaciones de barreras de polígono en la aplicación.

geometryPrecision

Utilice este parámetro para especificar el número de posiciones decimales que se utilizarán en las geometrías de respuesta devueltas por la operación de resolución. Esto se aplica solo a los valores x e y (no a los valores m o z).

geometryPrecision = 3

geometryPrecisionZ

Utilice este parámetro para especificar el número de posiciones decimales que se utilizarán en las geometrías de respuesta devueltas por la operación de resolución. Esto se aplica solo a los valores z (no a los valores x, y o m).

geometryPrecisionZ = 3

returnZ

Incluye valores z para las geometrías devueltas si es compatible con la red subyacente. El valor predeterminado es false.

  • true: las geometrías de salida tendrán un valor z.
  • false (predeterminado): no se devuelve ningún valor x.

ignoreInvalidLocations

Especifique si se ignorarán las ubicaciones de entrada no válidas al buscar la mejor solución. El servicio considera que un punto de entrada no es válido si no está dentro de la tolerancia de alineación máxima de cualquier calle transitable.

  • true: se ignoran los puntos no válidos.
  • false: cualquier punto no válido en la solicitud hará que el servicio devuelva un error.

El valor predeterminado es true.

outSR

Utilice este parámetro para especificar la referencia espacial de las geometrías, como entidades de líneas o puntos, que devuelve un servicio.

El valor del parámetro se puede especificar como un Id. conocido (WKID) para la referencia espacial. Consulte Utilizar referencias espaciales para buscar valores de WKID.

Muchos de los mapas base proporcionados por ArcGIS Online están en la referencia espacial Web Mercator (WKID 102100). Al especificar outSR=102100 se devuelven las geometrías de la referencia espacial Web Mercator, que se pueden dibujar sobre los mapas base.

overrides

Nota:

Este parámetro es solo para uso interno.

locateSettings

Use este parámetro para especificar configuraciones que afecten a cómo se ubican las entradas, como la máxima distancia de búsqueda que se usa al localizar las entradas en la red, o las fuentes de red que se usan para localizar. Para restringir la ubicación en una parte del origen, puede especificar una cláusula WHERE para un origen.

Más información sobre la localización de entradas

El valor de parámetro se especifica como un objeto JSON. El objeto JSON le permite especificar un JSON de localizador para todas las entidades de entrada en el análisis o puede especificar una excepción para una entrada concreta. La excepción le permite tener diferentes ajustes para cada entrada de análisis. Por ejemplo, es posible no permitir que las paradas se ubiquen en las rampas de autopista y permitir que las barreras de punto se ubiquen en las rampas de autopista.

Nota:

El valor predeterminado de este parámetro se basa en la configuración de las capas cuando el servicio de mapas se publica con las capacidades de análisis de red. Para obtener el valor predeterminado del parámetro, consulte el recurso de la capa de red.

El objeto JSON del localizador tiene las siguientes propiedades:

  • tolerance y toleranceUnits: permite controlar la distancia máxima de búsqueda al localizar las entradas. Si no se encuentra ninguna ubicación de red válida dentro de esta distancia, la entidad de entrada se considerará no ubicada. Una pequeña tolerancia de búsqueda disminuye la probabilidad de ubicarse en la calle equivocada, pero aumenta la probabilidad de no encontrar ninguna ubicación de red válida. El valor del parámetro toleranceUnits se puede especificar como uno de los siguientes valores:
    • esriCentimeters
    • esriDecimalDegrees
    • esriDecimeters
    • esriFeet
    • esriInches
    • esriIntFeet
    • esriIntInches
    • esriIntMiles
    • esriIntNauticalMiles
    • esriIntYards
    • esriKilometers
    • esriMeters
    • esriMiles
    • esriMillimeters
    • esriNauticalMiles
    • esriYards
  • sources: le permite controlar qué fuente de red se puede utilizar para la ubicación. Por ejemplo, puede configurar el análisis para localizar entradas en calles, pero no en aceras. La lista de posibles fuentes en las que localizar es específica del dataset de red al que hace referencia este servicio. Solo se usan para ubicar las fuentes que estén presentes en la matriz de fuentes. Es posible especificar una cláusula where en cada fuente especificada en la matriz de fuentes para restringir aún más la localización en ese origen que coincida con ciertas características mediante una expresión SQL. Por ejemplo, puede configurar el análisis para que localice las entradas solo en las entidades de calles que coincidan con determinadas clases de carreteras, como evitar las rampas de las autopistas. Las fuentes se especifican como una matriz de objetos, cada uno con las siguientes propiedades:
    • name: nombre de la clase de entidad de la fuente de red que se puede usar para ubicar entradas.
    • where: una expresión SQL en la clase de entidad de fuente de red.
  • allowAutoRelocate: permite controlar si las entradas con campos de ubicación de red existentes se pueden reubicar automáticamente al solucionar para garantizar que se disponga de campos de ubicación enrutables y válidos para el análisis. Si el valor es true, los puntos ubicados en elementos de red restringidos y los puntos afectados por las barreras se reubicarán en la ubicación enrutable más cercana. Si el valor es false, los campos de ubicación de red se utilizarán como están, aunque los puntos no sean accesibles, y esto puede hacer que la resolución falle. Aunque el valor sea false, las entradas sin campos de ubicación o campos de ubicación incompletos se localizarán durante la operación de resolución.

El valor de parámetro se especifica como un objeto JSON. El objeto JSON le permite especificar un JSON de localizador para todas las entidades de entrada en el análisis o puede especificar una excepción para una entrada concreta. La excepción le permite tener diferentes ajustes para cada entrada de análisis. Por ejemplo, es posible no permitir que las paradas se ubiquen en las rampas de autopista y permitir que las barreras de punto se ubiquen en las rampas de autopista. Al especificar el JSON locateSettings, deberá proporcionar todas las propiedades, incluidas tolerance, toleranceUnits, sources y allowAutoRelocate en el objeto JSON de localizador predeterminado. La cláusula where para cada fuente es opcional. Si necesita proporcionar un JSON de localizador diferente para una clase de entrada en particular, debe incluir la propiedad de invalidaciones para esa entrada. El nombre de propiedad debe coincidir con el nombre del parámetro de entrada. El JSON del localizador de una entrada concreta no tiene que incluir todas las propiedades; solo tiene que incluir las propiedades que son distintas de las propiedades del JSON del localizador predeterminado.

Syntax for locateSettings

Sintaxis para especificar locateSettings utilizando una estructura JSON

Nota:

Ni las barreras de polilínea ni las barreras de polígono admiten las propiedades tolerance ni toleranceUnits.


{
  "default": {
    "tolerance": <value>,
    "toleranceUnits": "<unit>",
    "allowAutoRelocate": true | false,
    "sources": [
      {
        "name": "<sourceName>",
        "where": "<whereClause>"
      }
    ]
  },
  "overrides": {
    "origins": {
      "tolerance": <value>,
      "toleranceUnits": "<unit>",
      "allowAutoRelocate": true | false,
      "sources": [
        {
          "name": "<sourceName>",
          "where": "<whereClause>"
        }
      ]
    },
    "destinations": {
      "tolerance": <value>,
      "toleranceUnits": "<unit>",
      "allowAutoRelocate": true | false,
      "sources": [
        {
          "name": "<sourceName>",
          "where": "<whereClause>"
        }
      ]
    },
    "barriers": {
      "tolerance": <value>,
      "toleranceUnits": "<unit>",
      "allowAutoRelocate": true | false,             
      "sources": [
        {
          "name": "<sourceName>",
          "where": "<whereClause>"
        }
      ]
    },
    "polylineBarriers": {
      "allowAutoRelocate": true | false,       
      "sources": [
        {
          "name": "<sourceName>",
          "where": "<whereClause>"
        }
      ]
    },
    "polygonBarriers": {
      "allowAutoRelocate": true | false,  
      "sources": [
        {
          "name": "<sourceName>",
          "where": "<whereClause>"
        }
      ]
    }
  }
}

Examples for locateSettings

Ejemplo 1: especificar la configuración predeterminada de localización mediante una estructura JSON

En este ejemplo, se muestra cómo especificar la configuración de localización para que las entradas solo se ubiquen a menos de 500 metros de la ubicación especificada. Una pequeña tolerancia de búsqueda como esta puede ser valiosa si está solucionando utilizando un modo de viaje a pie y no desea que las entradas se ubiquen a más de 500 metros de la ubicación del punto original.


{
  "default": {
    "tolerance": 500,
    "toleranceUnits": "esriMeters",
    "allowAutoRelocate": true,
    "sources": [
      {
        "name": "Routing_Streets"
      }
    ]
  }
}

Ejemplo 2: especificar la configuración de localización predeterminada y las excepciones de la configuración de localización de algunas entradas mediante una estructura JSON

En este ejemplo, se muestra cómo especificar la configuración de ubicación para evitar que se ubiquen orígenes y destinos en rampas de autopista. La configuración de localización predeterminada permite la localización en la fuente Routing_Streets. En el caso de los orígenes y destinos, se utiliza la opción overrides para especificar una cláusula where para la fuente Routing_Streets y así evitar que se ubiquen en rampas de autopista (un valor de campo ROAD_CLASS igual a 3). Con este JSON locateSettings, ni los orígenes ni los destinos pueden ubicarse en rampas de autopista, lo que sí puede ocurrir con las barreras, ya que utilizan la configuración de localización predeterminada, que no incluye ninguna cláusula where.


{
  "default": {
    "tolerance": 20,
    "toleranceUnits": "esriKilometers",
    "allowAutoRelocate": true,
    "sources": [
      {
        "name": "Routing_Streets"
      }
    ]
  },
  "overrides": {
    "origins": {
      "sources": [
        {
          "name": "Routing_Streets",
          "where": "ROAD_CLASS <> 3"
        }
      ]
    },
    "destinations": {
      "sources": [
        {
          "name": "Routing_Streets",
          "where": "ROAD_CLASS <> 3"
        }
      ]
    }
  }
}

Ejemplo 3: especificar la configuración de localización predeterminada y las excepciones de la configuración de localización usando una estructura JSON para que las diferentes entradas se localicen utilizando diferentes fuentes

En este ejemplo, se muestra cómo especificar la configuración de localización predeterminada para localizar entradas en la clase de entidad de origen Routing_Streets y permitir que las barreras se ubiquen solo en la clase de entidad de cruces del sistema (Routing_ND_Junctions).


{
  "default": {
    "tolerance": 20,
    "toleranceUnits": "esriKilometers",
    "allowAutoRelocate": true,
    "sources": [
      {
        "name": "Routing_Streets"
      }
    ]
  },
  "overrides": {
    "barriers": {
      "sources": [
        {
          "name": "Routing_ND_Junctions"
        }
      ]
    }
  }
}

returnEmptyResults

Especifique si el servicio devolverá resultados vacíos en lugar de la propiedad de error cuando la solicitud falle.

  • true: la respuesta JSON no contiene la propiedad de error cuando la solicitud falla. Todos los errores se devuelven en la propiedad messages. El JSON de respuesta puede contener un conjunto de entidades vacío o un resultado vacío para las propiedades que solicitó.
  • false: la respuesta JSON solo contiene la propiedad de error cuando la solicitud falla.

El valor predeterminado es false.

Normalmente, cuando una solicitud falla, el servicio devuelve una respuesta JSON que contiene la propiedad de error. En algunos casos, es posible que desee definir returnEmptyResults como true para que siempre devuelva las propiedades solicitadas en lugar de devolver una respuesta de error para ayudar a manejar la respuesta de forma más coherente.

Even if the request fails, when you set returnEmptyResults = true, returnOrigins = true, and returnDestinations = true, you can return origins and destinations to investigate why some of them failed to locate.

Output parameters

Upon successfully execution, the service returns the travel time, distance, or both for each origin-destination pair. It returns either odLines or odCostMatrix for this information depending on the outputType you specify. The service can also return the output origins, the output destinations, the output barriers, the output polygon barriers, and the output polyline barriers if you choose to return them. It also returns the status of whether the analysis was successful. This information is output in the following output parameters:

odLines

When the outputType is esriNAODOutputNoLines or esriNAODOutputStraightLines, the output will be odLines. The odLines output include geometry for the straight line connecting each origin-destination pairs when the outputType is esriNAODOutputStraightLines.

FieldDescription
ObjectID

The system-managed ID field.

Name

The name of the corresponding input origin and destination feature. The origin name is first and the destination name is second, for example, Origin 1 – Destination 1. If the name is not specified for origin or destination, a unique name prefixed with Location is automatically generated for that origin or destination.

OriginID

El valor ObjectID de la entidad de origen de entrada correspondiente. Esto se puede usar para unir atributos adicionales entre los orígenes de entrada y las líneas de destino de origen.

DestinationID

The ObjectID value of the corresponding input destination feature. This can be used to join additional attributes between the input destinations and the origin-destination lines.

DestinationRank

Clasificación del destino entre todos los destinos encontrados para el origen asociado. El destino más cercano al origen tiene una clasificación de 1.

Total_[Cost](for instance, Total_TravelTime, where TravelTime is the travel cost)

The travel cost along the street network from the associated origin to the associated destination. These fields are populated for the impedance attribute and any accumulated attributes.

odCostMatrix

When the outputType is esriNAODOutputSparseMatrix, the output is a JSON object that contains an array identified by costAttributeNames to know what cost attributes are in the matrix and in what index. It then has an associative array of origins (identified by their ObjectID), each of which has an associative array of destinations (identified by their ObjectID) containing an array of costs that are in the same order as the costAttributeNames array.

In the example below, TravelTime is the impedance attribute, and Miles and Kilometers are the accumulate attributes used in the analysis. In the returned matrix that contains the time and distance between the origin-destination pair, each nested JSON object is composed of origin ObjectID, destination ObjectID, and the costs from origin to destination in the order defined in costAttributeNames. In the example below, travel from origin ObjectID 1 to destination ObjectID 1 takes 62.88 miles.


"odCostMatrix": {
  "costAttributeNames": [
    "TravelTime",
    "Miles",
    "Kilometers"
  ],
  "1": {
    "1": [
      78.61,
      62.88,
      101.20
    ]
  }
}

origins

Access the origins that participated in the analysis. It provides information about origins that could not be included in the analysis.

The following table describes the attributes of the output origins:

FieldDescription
ObjectID

The object ID of the input origin. If ObjectID is not specified, it will be a system-generated ID for the origin.

Name

El nombre del origen. Si el nombre del origen se ha especificado como parte del campo Name, este campo tiene el mismo valor. De lo contrario, incluye un valor generado automáticamente con el prefijo Location.

TargetDestinationCount

El valor del campo TargetDestinationCount en los orígenes de entrada correspondientes.

SourceID

El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

SourceOID

El ObjectID de la entidad del origen donde se ubica el punto de entrada.

PosAlong

La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

For example, a value of 0.47 indicates that the point is positioned 47 percent from the start of the source line feature.

SideOfEdge

El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

CurbApproach

El valor del campo CurbApproach en los orígenes de entrada correspondientes.

Status

Indica el estado del punto con respecto a su ubicación en la red y el resultado del análisis. Los posibles valores son los siguientes:

  • 0 (Aceptar): el punto se ubicó en la red.
  • 1 (No ubicado): el punto no se ubicó en la red y, por tanto, no se incluye en el análisis.
  • 2 (Elemento de red no localizado): el elemento de red identificado por los campos de ubicación de red del punto no se pudo encontrar. Esto puede producirse si se eliminó un elemento de red donde debería estar el punto y la ubicación de red no se volvió a calcular.
  • 3 (Elemento no transitable): el elemento de red donde está ubicado el punto no es transitable. Puede ocurrir cuando el elemento está restringido por un atributo de restricción.
  • 4 (Valores de campo no válido): los valores de campo caen fuera de un rango o un dominio de valor codificado. Por ejemplo, existe un número negativo donde se requieren números positivos.
  • 5 (No ha llegado): el solucionador no puede alcanzar el punto. El punto puede estar en un área separada y desconectada de la red con respecto a las demás entradas, o barreras o restricciones evitan el desplazamiento con respecto al punto.
  • 6 (Violación de ventana de tiempo): no se pudo alcanzar el punto dentro de las ventanas de tiempo designadas. Este estado solo se aplica a tipos de análisis de red que admiten ventanas de tiempo.
  • 7 (No ubicado en el más cercano): la ubicación de red más cercana al punto no se puede atravesar debido a una restricción o barrera, de modo que el punto se ha ubicado en la entidad de red más cercana que se puede atravesar.

SnapX

La coordenada x de la posición en el dataset de red donde se ubica el punto, en el sistema de coordenadas del dataset de red.

SnapY

La coordenada y de la posición en el dataset de red donde se ubica el punto, en el sistema de coordenadas del dataset de red.

SnapZ

La coordenada z de la posición en el dataset de red donde se ubica el punto, en el sistema de coordenadas del dataset de red. El campo SnapZ es 0 si la red es bidimensional.

DistanceToNetworkInMeters

La distancia en metros entre la ubicación geográfica del punto y la posición en la que se ubicaba en la red.

Cutoff_[Cost]

The value of the cutoff field in the corresponding input origins.

destinations

Access the destinations that participated in the analysis. It provides information about destinations that could not be included in the analysis as well as the total number of origins that were able to reach a given destination.

The following table describes the attributes of the output destinations:

FieldDescription
ObjectID

The object ID of the input destination. If ObjectID is not specified, it will be a system-generated ID for the destination.

Name

El nombre del destino. Si el nombre del origen se ha especificado como parte del campo Name, este campo tiene el mismo valor. De lo contrario, incluye un valor generado automáticamente con el prefijo Location.

SourceID

El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

SourceOID

El ObjectID de la entidad del origen donde se ubica el punto de entrada.

PosAlong

La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

For example, a value of 0.47 indicates that the point is positioned 47 percent from the start of the source line feature.

SideOfEdge

El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

CurbApproach

El valor del campo CurbApproach en los destinos de entrada correspondientes.

Status

Indica el estado del punto con respecto a su ubicación en la red y el resultado del análisis. Los posibles valores son los siguientes:

  • 0 (Aceptar): el punto se ubicó en la red.
  • 1 (No ubicado): el punto no se ubicó en la red y, por tanto, no se incluye en el análisis.
  • 2 (Elemento de red no localizado): el elemento de red identificado por los campos de ubicación de red del punto no se pudo encontrar. Esto puede producirse si se eliminó un elemento de red donde debería estar el punto y la ubicación de red no se volvió a calcular.
  • 3 (Elemento no transitable): el elemento de red donde está ubicado el punto no es transitable. Puede ocurrir cuando el elemento está restringido por un atributo de restricción.
  • 4 (Valores de campo no válido): los valores de campo caen fuera de un rango o un dominio de valor codificado. Por ejemplo, existe un número negativo donde se requieren números positivos.
  • 5 (No ha llegado): el solucionador no puede alcanzar el punto. El punto puede estar en un área separada y desconectada de la red con respecto a las demás entradas, o barreras o restricciones evitan el desplazamiento con respecto al punto.
  • 6 (Violación de ventana de tiempo): no se pudo alcanzar el punto dentro de las ventanas de tiempo designadas. Este estado solo se aplica a tipos de análisis de red que admiten ventanas de tiempo.
  • 7 (No ubicado en el más cercano): la ubicación de red más cercana al punto no se puede atravesar debido a una restricción o barrera, de modo que el punto se ha ubicado en la entidad de red más cercana que se puede atravesar.

SnapX

La coordenada x de la posición en el dataset de red donde se ubica el punto, en el sistema de coordenadas del dataset de red.

SnapY

La coordenada y de la posición en el dataset de red donde se ubica el punto, en el sistema de coordenadas del dataset de red.

SnapZ

La coordenada z de la posición en el dataset de red donde se ubica el punto, en el sistema de coordenadas del dataset de red. El campo SnapZ es 0 si la red es bidimensional.

DistanceToNetworkInMeters

La distancia en metros entre la ubicación geográfica del punto y la posición en la que se ubicaba en la red.

barriers

This provides access to points that act as temporary restrictions or represent additional time or distance that may be required to travel on the underlying streets.

Field nameDescription

ObjectID

The object ID of the associated input barrier. If ObjectID is not specified, it will be a system-generated ID for the barrier.

Name

El nombre de la barrera.

SourceID

El identificador numérico de la clase de entidad de origen del dataset de red donde se ubica el punto de entrada.

SourceOID

El ObjectID de la entidad del origen donde se ubica el punto de entrada.

PosAlong

La posición a lo largo de la dirección digitalizada de la entidad de línea de origen. Este valor se almacena como ratio. Este campo es nulo si la ubicación de red hace referencia a un cruce.

For example, a value of 0.47 indicates that the point is positioned 47 percent from the start of the source line feature.

SideOfEdge

El lado del eje respecto a la dirección digitalizada de la entidad de línea. Este campo se limita a un dominio de dos valores: lado derecho (1) y lado izquierdo (2).

CurbApproach

The direction of traffic that is affected by the barrier. The field value is specified as one of the following integers (use the numeric code, not the name in parentheses):

  • 0 (Either side of vehicle): The barrier affects travel over the edge in both directions.
  • 1 (Right side of vehicle): Vehicles are only affected if the barrier is on their right side during the approach. Vehicles that traverse the same edge but approach the barrier on their left side are not affected by the barrier.
  • 2 (Left side of vehicle): Vehicles are only affected if the barrier is on their left side during the approach. Vehicles that traverse the same edge but approach the barrier on their right side are not affected by the barrier.

Status

Indica el estado del punto con respecto a su ubicación en la red y el resultado del análisis. Los posibles valores son los siguientes:

  • 0 (Aceptar): el punto se ubicó en la red.
  • 1 (No ubicado): el punto no se ubicó en la red y, por tanto, no se incluye en el análisis.
  • 2 (Elemento de red no localizado): el elemento de red identificado por los campos de ubicación de red del punto no se pudo encontrar. Esto puede producirse si se eliminó un elemento de red donde debería estar el punto y la ubicación de red no se volvió a calcular.
  • 3 (Elemento no transitable): el elemento de red donde está ubicado el punto no es transitable. Puede ocurrir cuando el elemento está restringido por un atributo de restricción.
  • 4 (Valores de campo no válido): los valores de campo caen fuera de un rango o un dominio de valor codificado. Por ejemplo, existe un número negativo donde se requieren números positivos.
  • 5 (No ha llegado): el solucionador no puede alcanzar el punto. El punto puede estar en un área separada y desconectada de la red con respecto a las demás entradas, o barreras o restricciones evitan el desplazamiento con respecto al punto.
  • 6 (Violación de ventana de tiempo): no se pudo alcanzar el punto dentro de las ventanas de tiempo designadas. Este estado solo se aplica a tipos de análisis de red que admiten ventanas de tiempo.
  • 7 (No ubicado en el más cercano): la ubicación de red más cercana al punto no se puede atravesar debido a una restricción o barrera, de modo que el punto se ha ubicado en la entidad de red más cercana que se puede atravesar.

FullEdge

Point barriers are applied to the edge elements during the analysis. The field value is specified as one of the following integers (use the numeric code, not the name in parentheses):

  • 0 (False)—Permits travel on the edge up to the barrier, but not through it. This is the default value.
  • 1 (True)—Restricts travel anywhere on the associated edge.

BarrierType

Specifies whether the point barrier restricts travel completely or adds time or distance when it is crossed. The value for this attribute is specified as one of the following integers (use the numeric code, not the name in parentheses):

  • 0 (Restriction)—Prohibits travel through the barrier. The barrier is referred to as a restriction point barrier since it acts as a restriction.
  • 2 (Added Cost)—Traveling through the barrier increases the travel time or distance by the amount specified in the Attr_[Cost] property value.

Attr_[Cost]

(for instance, Attr_TravelTime, where TravelTime is the travel cost)

This property is specific to added-cost barriers and is limited to values that are greater than or equal to zero. It indicates how much cost is added when the barrier is traversed.

polylineBarriers

Este parámetro proporciona acceso a una o varias líneas que prohíban viajar a cualquier ubicación en la que las líneas se intersequen con las calles.

Nombre de campoDescripción

ObjectID

El Id. de objeto de la barrera de polilínea de entrada asociada. Si no se especifica el valor ObjectID, el sistema lo generará para la barrera de polilínea.

Name

El nombre de la barrera.

BarrierType

Especifique si la barrera restringe el recorrido completamente o escala el tiempo o la distancia cuando se atraviesa. El valor de este atributo se especifica como uno de los siguientes enteros (use el código numérico, no el nombre entre paréntesis):

  • 0 (Restricción): prohíbe viajar por la barrera. La barrera se conoce como barrera de línea de restricción, ya que actúa como una restricción.
  • 1 (Coste en escala): escala el tiempo o la distancia requeridos para recorrer las calles subyacentes por un factor especificado mediante el atributo Attr_[Cost].

Attr_[Cost]

(por ejemplo, Attr_TraveTime cuando TravelTime es el coste de viaje)

Este atributo es específico de las barreras con coste en escala. Es el factor por el que se multiplica el coste de los ejes subyacentes a la barrera.

polygonBarriers

Este parámetro proporciona acceso a polígonos que restrinjan completamente el viaje o escalen de una forma proporcional el tiempo o la distancia que se requieren para viajar por las calles que se intersecan con los polígonos.

Nombre de campoDescripción

ObjectID

El Id. de objeto de la barrera de polígono de entrada asociada. Si no se especifica el valor ObjectID, el sistema lo generará para la barrera de polígono.

Name

El nombre de la barrera.

BarrierType

Especifique si la barrera restringe el recorrido completamente o escala el tiempo o la distancia cuando se atraviesa. El valor de este atributo se especifica como uno de los siguientes enteros (use el código numérico, no el nombre entre paréntesis):

  • 0 (Restricción): prohíbe atravesar cualquier parte de la barrera. La barrera se conoce como barrera de polígono de restricción, ya que prohíbe viajar por las calles que se intersecan con la barrera.
  • 1 (Coste en escala): escala el tiempo o la distancia requeridos para recorrer las calles subyacentes por un factor especificado mediante el atributo Attr_[Cost].

Attr_[Cost]

(por ejemplo, Attr_TravelTime cuando TravelTime es el coste de viaje)

Este atributo es específico de las barreras con coste en escala. Es el factor por el que se multiplica el coste de los ejes subyacentes a la barrera.

Example usage

You can make a request to the synchronous Origin Destination Cost Matrix service using the following form:

https://machine.domain.com/webadaptor/rest/services/Routing/NetworkAnalysis/NAServer/OriginDestinationCostMatrix/solveODCostMatrix?<parameters>

The Origin Destination Cost Matrix service supports synchronous and asynchronous execution modes.

The request URL and the parameter names supported by the service when using asynchronous execution are different and described in Origin Destination Cost Matrix service with asynchronous execution.

Calculate total travel time and distance between two cities

This example shows how to calculate total travel time and distance between two cities (San Diego and Los Angeles), a typical Origin Destination Cost Matrix problem.

Specify the same two cities as the origins and destinations parameter to get travel time and distance traveling between these two cities. Use the JSON structure to specify the origins and destinations parameter in order to specify the Name and ObjectID of the cities that will be included in the service output.

Request URL

https://machine.domain.com/webadaptor/rest/services/Routing/NetworkAnalysis/NAServer/OriginDestinationCostMatrix/solveODCostMatrix?origins=
{"spatialReference":{"wkid":102100},"features":[{"geometry":{"x":-13042381.897669187,"y":3857625.761983883},"attributes":{"ObjectID":1,"Name":"San Diego"}},
{"geometry":{"x":-13163008.811087687,"y":4035986.6896486743},"attributes":{"ObjectID":2,"Name":"Los Angeles"}}]}&destinations={"spatialReference":{"wkid":102100},"features":[{"geometry":{"x":-13042381.897669187,"y":3857625.761983883},"attributes":{"ObjectID":1,"Name":"San Diego"}},
{"geometry":{"x":-13163008.811087687,"y":4035986.6896486743},"attributes":{"ObjectID":2,"Name":"Los Angeles"}}]}&f=pjson&token=<yourToken>

JSON response example

The default outputType is esriNAODOutputSparseMatrix, so the response is a matrix format. The default impedanceAttributeName is TravelTime, and the default accumulateAttributeNames are Miles and Kilometers in the example below. The response contains the travel time, travel distance in miles, and travel distance in kilometers between San Diego and Los Angeles. Within the odCostMatrix property, each nested JSON object is composed of origin ObjectID, destination ObjectID, and the costs from origin to destination in the order defined in costAttributeNames.


{
  "messages": [],
  "odCostMatrix": {
    "1": {
      "1": [
        0,
        0,
        0
      ],
      "2": [
        157.0376430630198,
        124.20114191467465,
        199.88236253353011
      ]
    },
    "2": {
      "1": [
        158.82792954092292,
        124.16291635554705,
        199.82084445930158
      ],
      "2": [
        0,
        0,
        0
      ]
    },
    "costAttributeNames": [
      "TravelTime",
      "Miles",
      "Kilometers"
    ]
  }
}

JSON response syntax

The JSON response from the Origin Destination Cost Matrix service is based on the following syntax when outputType is esriNAODOutputSparseMatrix. The properties returned in the response are based on the request parameters. For example, the origins property is returned only if the returnOrigins parameter is set to true. If a request fails, the JSON response only contains the error property. The examples in the subsequent section illustrate the response returned with specific request parameters.

JSON Response syntax for successful request


{
  "odCostMatrix": {
    "<OriginID1>": {
      "<DestinationID1>": [
        <costAttribute1Value1>,
        <costAttribute2Value1>
      ],
      "<DestinationID2>": [
        <costAttribute1Value2>,
        <costAttribute2Value2>
      ]
    },
    "<OriginID2>": {
      "<DestinationID1>": [
        <costAttribute1Value3>,
        <costAttribute2Value3>
      ],
      "<DestinationID2>": [
        <costAttribute1Value4>,
        <costAttribute2Value4>
      ]
    },
    "costAttributeNames": [
      "<costAttribute1>",
      "<costAttribute2>"
    ]
  },
  "origins": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        },
        "geometry": {<point1>}
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        },
        "geometry": {<point2>}
      }
    ]
  },
  "destinations": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        },
        "geometry": {<point1>}
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        },
        "geometry": {<point2>}
      }
    ]
  },
  "barriers": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        },
        "geometry": {<point1>}
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        },
        "geometry": {<point2>}
      }
    ]
  },
  "polylineBarriers": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        },
        "geometry": {<polyline1>}
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        },
        "geometry": {<polyline2>}
      }
    ]
  },
  "polygonBarriers": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        },
        "geometry": {<polygon1>}
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        },
        "geometry": {<polygon2>}
      }
    ]
  }
}

JSON Response syntax for failed request


{
  "error": {
    "code": <code>,
    "message": "<message>",
    "details": ["<details>"]
  }
}

When outputType is esriNAODOutputStraightLines or esriNAODOutputNoLines, the JSON response from Origin Destination Cost Matrix service includes odLinesproperty.

JSON Response syntax for successful request when outputType is esriNAODOutputStraightLines

When the outputType is esriNAODOutputStraightLines, the odLines property includes a geometry property for each feature.


{
  "odLines": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        },
        "geometry": {<polyline1>}
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        },
        "geometry": {<polyline2>}
      }
    ]
  }
}

JSON Response syntax for successful request when outputType is esriNAODOutputNoLines

When outputType is esriNAODOutputNoLines, the odLines property doesn't include a geometry property for each feature.


{
  "odLines": {
    "spatialReference": {<spatialReference>},
    "features": [
      {
        "attributes": {
          "<field1>": <value11>,
          "<field2>": <value12>
        }
      },
      {
        "attributes": {
          "<field1>": <value21>,
          "<field2>": <value22>
        }
      }
    ]
  }
}