Hinzufügen transienter Aktualisierungen zu „GetRouteCostMatrix“

Was sind transiente Aktualisierungen?

Das sind Änderungen, die Sie am Routenführungsdatum für jede Anforderung vornehmen können, die nicht länger als die jeweilige Anforderung bestehen bleiben. Sie können etwa anfordern, dass der Server versucht, alle Hauptverkehrsstraßen-Typen zu vermeiden, oder die Geschwindigkeit eines bestimmten Punktes basierend auf einigen Kriterien ändern. Jede Anforderung kann mindestens eine Aktualisierung enthalten. Für Geschwindigkeitsaktualisierungen ist ein positiver Geschwindigkeitswert eine Geschwindigkeitserhöhung und ein negativer Geschwindigkeitswert eine Geschwindigkeitsverringerung. Es gibt drei Hauptaktualisierungstypen:

  1. Punkt (unterstützt Aktualisierungen über Prozentsatz, Geschwindigkeit, Geschwindigkeitsanpassung und Ausschluss)
  2. Segment (unterstützt Aktualisierungen über Prozentsatz, Geschwindigkeit, Geschwindigkeitsanpassung, Ausschluss und Straßentyp)
  3. Straßentyp (unterstützt Aktualisierungen über Prozentsatz, Geschwindigkeit und Geschwindigkeitsanpassung)

Punktaktualisierungen sind Änderungen, die auf einen entsprechenden Punkt (Breitengrad, Längengrad) angewendet werden. Für einen bestimmten Punkt können Sie: den Punkt ausschließen, die Geschwindigkeit des Punktes festlegen oder die Geschwindigkeit des Punktes um einen Wert oder Prozentsatz ändern (erhöhen oder verringern). Segmentaktualisierungen sind auf eine entsprechende Segment-ID angewendete Änderungen. Für ein bestimmtes Segment können Sie das Segment ausschließen, die Geschwindigkeit des Segments festlegen, die Geschwindigkeit des Segments um einen Wert oder Prozentsatz ändern (erhöhen oder verringern) oder den Straßentyp des Segments ändern. Straßentypaktualisierungen sind auf einen entsprechenden Straßentyp angewendete Änderungen. Für einen bestimmten Straßentyp können Sie: die Geschwindigkeit des Straßentyps festlegen oder die Geschwindigkeit des Straßentyps um einen Wert oder Prozentsatz ändern (erhöhen oder verringern).

Weitere Informationen zur Syntax und den Optionen finden Sie unter TransientUpdates im Routenführungsschema.

Folgendes sind Beschreibungen für die verschiedenen Aktualisierungstypen:

Aktualisierungstyp

Beschreibung

percentage

Eine Geschwindigkeitsaktualisierung, bei der Sie eine Erhöhung der Geschwindigkeit definieren, indem Sie einen Prozentsatz zur Erhöhung (positiver Wert) oder zur Verringerung (negativer Wert) der Geschwindigkeit angeben.

speed

Eine Geschwindigkeitsaktualisierung, bei der Sie die neue Geschwindigkeit definieren, indem Sie die Geschwindigkeitseinheit und die neue Geschwindigkeit angeben. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).

speed adjustment

Eine Geschwindigkeitsaktualisierung, bei der Sie eine Änderung der Geschwindigkeit definieren, indem Sie die Änderung der Geschwindigkeit (Einheit und Wert) angeben. Geschwindigkeitswerte können erhöht (positiver Wert) oder verringert (negativer Wert) werden. Bei Geschwindigkeitsaktualisierungen kann die Geschwindigkeitseinheit einen der folgenden Werte aufweisen: kph (Kilometer pro Stunde), mph (Meilen pro Stunde), mtps (Meter pro Sekunde) oder mtpm (Meter pro Minute).

exclude

Das ist ein boolescher Wert, um den angegebenen Teil der Route von der Berechnung auszuschließen.

road type

Das ist ein Zeichenfolgenwert, um den Wert des Straßentyps für die Routenberechnung zu ändern.

Beispiele

Eine vollständige Kostenmatrixanforderung, einschließlich einer Punktaktualisierung, die eine Geschwindigkeitsanpassung um 45 kph enthält.



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://www.mapinfo.com/routing/service/v1" xmlns:v11="http://www.mapinfo.com/midev/service/geometries/v1">
   <soapenv:Header/>
   <soapenv:Body>
      <v1:RouteCostMatrixRequest id="?" locale="?">
         <v1:StartPoints srsName="epsg:4326">
            <v11:Point srsName="epsg:4326">
               <v11:Pos>
                  <v11:X>-73.972033</v11:X>
                  <v11:Y>40.794928</v11:Y>
               </v11:Pos>
            </v11:Point>             
		</v1:StartPoints>
		<v1:EndPoints srsName="epsg:4326">
            <v11:Point srsName="">
               <v11:Pos>
                  <v11:X> -73.985617</v11:X>
                  <v11:Y>40.747</v11:Y>
               </v11:Pos>
            </v11:Point>
		</v1:EndPoints>
		<v1:DistanceUnit>Meter</v1:DistanceUnit>
		<v1:TimeUnit>Second</v1:TimeUnit>
		<v1:ReturnOptimalRoutesOnly/>
		<v1:TransientUpdates>
			<v1:PointUpdateList>
				<v1:Point srsName="epsg:4326">
				<v11:Pos>
					<v11:X>-73.985516</v11:X>
					<v11:Y>40.747157</v11:Y>
				</v11:Pos>
				</v1:Point>
                <v1:PointTypeUpdates>
					<v1:SpeedUpdate>
						<v1:SpeedAdjustment uom="KPH">45</v1:SpeedAdjustment>
					</v1:SpeedUpdate>
				</v1:PointTypeUpdates>
			</v1:PointUpdateList>
		</v1:TransientUpdates>
	   <v1:DatasetResourceName>US_NE</v1:DatasetResourceName>
	   </v1:RouteCostMatrixRequest>
   </soapenv:Body>
</soapenv:Envelope>

			

Nur der Abschnitt TransientUpdates einer Kostenmatrixanforderung, einschließlich einer Segmentaktualisierung, die eine Änderung des Geschwindigkeitsprozentsatzes (Verringerung) um 50 enthält.



<v1:TransientUpdates>
	<v1:SegmentUpdateList>
			<v1:SegmentID>7e3396fc:1511c75</v1:SegmentID>
			<v1:SegmentTypeUpdates>
				<v1:SpeedUpdate>
					<v1:Percentage>-50</v1:Percentage>
				</v1:SpeedUpdate>
			</v1:SegmentTypeUpdates>
	</v1:SegmentUpdateList>
</v1:TransientUpdates>

			

Nur der Abschnitt TransientUpdates einer Kostenmatrixanforderung, einschließlich einer Straßentypaktualisierung, die eine Geschwindigkeitsanpassung (Erhöhung) um 13 mph enthält.



<v1:TransientUpdates>
	<v1:RoadTypeUpdateList>
		<v1:RoadType>normal road dense urban</v1:RoadType>
		<v1:RoadTypeUpdates>
			<v1:SpeedUpdate>
				<v1:SpeedAdjustment uom="MPS">13</v1:SpeedAdjustment>
			</v1:SpeedUpdate>
		</v1:RoadTypeUpdates>
	</v1:RoadTypeUpdateList>
</v1:TransientUpdates>