GetTravelBoundary

GetTravelBoundary determina la frontera de tiempo o distancia a pie o en vehículo desde una ubicación. Esta función permite obtener polígonos que corresponden a un cálculo de elemento isócrono o equidistancia. Un elemento isócrono es un polígono o conjunto de puntos que representan un área que puede recorrerse en una red desde un punto inicial en un tiempo dado. La equidistancia es un polígono o conjunto de puntos que representan el área que se encuentra a cierta distancia desde un punto de partida. La operación Get Travel Boundary (también conocida como definición iso) toma un punto de partida, una unidad (lineal o de tiempo), uno o más costos y sus rótulos asociados como datos de entrada y devuelve el límite de viaje resultante. Costo hace referencia a la cantidad de tiempo o distancia que se usará para calcular un iso. Un rótulo es una cadena de caracteres que identifica el costo y se usa para hacer coincidir el resultado correspondiente. Se pueden dar múltiples costos como entrada, al proporcionar los costos como una cadena delimitada por “;”.

GetTravelBoundary forma parte del módulo Enterprise Routing.

Nota: GetTravelBoundary solo está disponible como servicio web. GetTravelBoundary no está disponible en las API Java, C++, C, .NET o COM.

URL del recurso

Extremo del elemento JSON:

http://server:port/rest/GetTravelBoundary/results.json

Extremo del XML:

http://server:port/rest/GetTravelBoundary/results.xml

Ejemplo con respuesta JSON

El siguiente ejemplo solicita una respuesta JSON:

http://myserver:8080/rest/GetTravelBoundary/results.json?​Data.Latitude=51.5072&Data.Longitude=0.1275&Data.&Data.TravelBoundaryCost=10&​Data.TravelBondaryCostUnits=Kilometers&Option.DataSetResourceName=Routing_db_gb

El elemento JSON devuelto por esta solicitud sería:

Nota: Algunos de los puntos se eliminaron de este ejemplo para acortarlo.
Nota: La respuesta en este ejemplo muestra coordenadas para las geometrías devueltas con valores de 14 lugares decimales. Esto contribuye a una carga más grande de lo necesario en la respuesta JSON, especialmente cuando se devuelven polígonos grandes o muchos registros. Esto también puede conducir a geometrías inválidas, como autointersecciones. Para reducir la carga mediante la devolución de valores acortados de coordenadas, agregue lo siguiente a %Spectrum%\server\bin\wrapper\wrapper.conf y vuelva a iniciar el servidor:wrapper.java.additional.xx=-Dcom.pb.midev.useprecision=true.
{"output_port": [{
   "IsoNodeResponse": [],
   "IsoPolygonResponse":    {
      "srsName": "epsg:4326",
      "Polygon": [      {
         "srsName": "epsg:4326",
         "Exterior": {"LineString": [{"Pos":          [
                        {
               "X": -84.34868168466456,
               "Y": 33.68373169496257
            },
                        {
               "X": -84.36945064055561,
               "Y": 33.69293307108579
            },
                        {
               "X": -84.3694506405556,
               "Y": 33.69293307108579
            },
                        {
               "X": -84.3694506405556,
               "Y": 33.69303002973829
            },
                        {
               "X": -84.37104825254721,
               "Y": 33.69391558543121
            },
                        {
               "X": -84.37104825254721,
               "Y": 33.6936408692491
            },
                        {
               "X": -84.42163929894845,
               "Y": 33.716054477754355
            },
                        {
               "X": -84.4440058668311,
               "Y": 33.710741143596806
            },
                        {
               "X": -84.43921303085625,
               "Y": 33.72800947960886
            },
                        {
               "X": -84.45678676276404,
               "Y": 33.73376559161287
            },
                        {
               "X": -84.43921303085625,
               "Y": 33.73996448146335
            },
            ...
         ]}]}
      }]
   },
   "user_fields": [   {
      "name": "TravelBoundaryCostUnits",
      "value": "Kilometers"
   }]
}]}

Ejemplo con respuesta XML

El siguiente ejemplo solicita una respuesta XML:

http://myserver:8080/rest/GetTravelBoundary/results.xml?​Data.TravelBoundaryCostUnits=Kilometers&Data.Latitude=33.751748&​Data.Longitude=-84.364014&Data.TravelBoundaryCost=10

El elemento XML devuelto por esta solicitud sería:

Nota: Algunos de los puntos se eliminaron de este ejemplo para acortarlo.
<ns3:xml.GetTravelBoundaryResponse
xmlns:ns2="http://www.mapinfo.com/midev/service/geometries/v1"
xmlns:ns3="http://www.pb.com/spectrum/services/GetTravelBoundary">
   <ns3:output_port>
      <ns3:IsoRouteResponse>
         <ns3:IsoNodeResponse/>
         <ns3:IsoPolygonResponse
              xsi:type="ns2:MultiPolygon"
              srsName="epsg:4326"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <ns2:Polygon srsName="epsg:4326">
               <ns2:Exterior>
                  <ns2:LineString>
                     <ns2:Pos>
                        <ns2:X>-84.34868168466456</ns2:X>
                        <ns2:Y>33.68373169496257</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.36945064055561</ns2:X>
                        <ns2:Y>33.69293307108579</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.3694506405556</ns2:X>
                        <ns2:Y>33.69293307108579</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.3694506405556</ns2:X>
                        <ns2:Y>33.69303002973829</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.37104825254721</ns2:X>
                        <ns2:Y>33.69391558543121</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.37104825254721</ns2:X>
                        <ns2:Y>33.6936408692491</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.42163929894845</ns2:X>
                        <ns2:Y>33.716054477754355</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.4440058668311</ns2:X>
                        <ns2:Y>33.710741143596806</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.43921303085625</ns2:X>
                        <ns2:Y>33.72800947960886</ns2:Y>
                     </ns2:Pos>
                     <ns2:Pos>
                        <ns2:X>-84.45678676276404</ns2:X>
                        <ns2:Y>33.73376559161287</ns2:Y>
                     </ns2:Pos>
                     ...
                  </ns2:LineString>
               </ns2:Exterior>
            </ns2:Polygon>
         </ns3:IsoPolygonResponse>
         <ns3:user_fields/>
      </ns3:IsoRouteResponse>
   </ns3:output_port>
</ns3:xml.GetTravelBoundaryResponse>