Zusammenfassung
FindRoutes legt die kürzesten Wege zu den Eingabestopps fest und gibt die Wegbeschreibungen, Informationen zu den Stopps sowie die Routen einschließlich Fahrzeit und Entfernung zurück.
Das Werkzeug kann Routen mit mehreren Stopps in der von Ihnen vorgegebenen Reihenfolge oder in der Reihenfolge ermitteln, die eine Reduzierung der Gesamtfahrzeit auf ein Minimum erlaubt. Die Eingabestopps können über das RouteName-Feld in verschiedene Routen gruppiert werden. Zudem gibt das Werkzeug eine Route für jede Stoppgruppe aus, wodurch Routen für viele Fahrzeuge in einem Berechnungsvorgang erstellt werden können.
Abbildung
Verwendung
Das Werkzeug ermittelt die kürzeste Route auf Grundlage der Fahrzeit, wenn der Wert für den Parameter Maßeinheiten zeitbasiert ist, und auf Grundlage der Reisestrecke, wenn der Wert entfernungsbasiert ist.
Zur erfolgreichen Ausführung des Werkzeugs müssen Sie mindestens zwei Stopps angeben. Sie können maximal 10,000 Stopps hochladen und mindestens 150 Stopps pro Route zuweisen.
Sie können bis zu 250 Punkt-Barrieren hinzufügen. Sie können beliebig viele Linien- oder Polygon-Barrieren hinzufügen, wobei die Linien-Barrieren nicht mehr als 500 Straßen-Features und die Polygon-Barrieren nicht mehr als 2,000 Features schneiden dürfen.
Um eine schnellere Lösungsfindung als bei genauen Routen zu erzielen, können Sie die Straßenhierarchie verwenden, doch das Ergebnis dürfte dann eher suboptimal sein.
Unabhängig davon, ob der Parameter Hierarchie verwenden aktiviert ist (True), wird die Hierarchie immer verwendet, wenn die geradlinige Entfernung zwischen zwei Stopps 50 Meilen (80,46 km) überschreitet.
Die Luftlinie zwischen zwei Stopps kann nicht größer sein als 50 Meilen (80,46 Kilometer), wenn für Reisemodus die Option Gehen gewählt wurde oder wenn die Option Benutzerdefiniert gewählt wurde und die Einschränkung Gehen verwendet wird.
Ist ein Eingabepunkt von der nächsten passierbaren Straße weiter als 12,42 Meilen (20 Kilometer) entfernt, wird der Punkt aus der Analyse ausgeschlossen.
Dieses Werkzeug ist zur Ausführung in ArcGIS Pro, ArcMap, ArcGlobe und ArcScene vorgesehen, nicht jedoch in ArcCatalog.
Syntax
FindRoutes_naagol (Stops, Measurement_Units, {Analysis_Region}, {Reorder_Stops_to_Find_Optimal_Routes}, {Preserve_Terminal_Stops}, {Return_to_Start}, {Use_Time_Windows}, {Time_of_Day}, Time_Zone_for_Time_of_Day, {UTurn_at_Junctions}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Use_Hierarchy}, {Restrictions}, {Attribute_Parameter_Values}, {Route_Shape}, {Route_Line_Simplification_Tolerance}, {Populate_Route_Edges}, {Populate_Directions}, {Directions_Language}, {Directions_Distance_Units}, {Directions_Style_Name}, {Travel_Mode}, {Impedance})
Parameter | Erläuterung | Datentyp |
Stops | Geben Sie mindestens zwei Stopps an, zwischen denen eine Route erstellt werden soll. Sie können maximal 10,000 Stopps hinzufügen und einer Route maximal 150 Stopps zuweisen. (Verwenden Sie das RouteName-Attribut, um Routen Stopps zuzuweisen.) Bei der Angabe von Stopps können Sie mithilfe von Attributen deren jeweilige Eigenschaften, darunter Name oder Durchführungszeit, festlegen. Für die Stopps können folgende Attribute angegeben werden: Name – Der Name des Stopps. Der Name wird in der Wegbeschreibung verwendet. Wenn kein Name angegeben ist, wird in den Ausgabestopps, -routen und -wegbeschreibungen automatisch ein eindeutiger Name generiert, dem "Location" vorangestellt wird. RouteName – Der Name der Route, der der Stopp zugewiesen wird. Wenn verschiedenen Stopps derselbe Routenname zugewiesen wird, kann dies dazu führen, dass die Stopps gruppiert und auf der gleichen Route angegeben werden. Sie können viele Routen in einem Berechnungsvorgang erstellen, indem Sie verschiedenen Gruppen von Stopps eindeutige Routennamen zuweisen. Mit diesem Werkzeug können Sie maximal 150 in einer Route gruppieren. Sequence – Die Stopps der Ausgaberouten weisen die mit diesem Attribut angegebene Reihenfolge auf. Innerhalb einer Gruppe von Stopps mit demselben RouteName-Wert sollte die Sequenznummer größer sein als Null, die Gesamtzahl der Stopps jedoch nicht übersteigen. Zudem darf keine Sequenznummer doppelt vorhanden sein. Wenn Stopps für Suche nach optimaler Route neu anordnen aktiviert ist (True), werden alle außer möglicherweise dem ersten und letzten Sequenzwert für jeden Routennamen ignoriert, sodass das Werkzeug die Sequenz ermitteln kann, bei der die Gesamtstrecke für jede Route auf ein Minimum reduziert wird. (Mit den Einstellungen für Reihenfolge der Stopps beibehalten und Zurück zum Start wird festgelegt, ob der erste oder letzte Sequenzwert für jede Route ignoriert wird.) AdditionalTime – Die Zeit, die am Stopp verbracht wird. Sie wird zur Gesamtzeit der Route hinzugefügt. Die Einheiten für diesen Attributwert werden vom Parameter Maßeinheiten angegeben. Der Attributwert wird nur dann in die Analyse einbezogen, wenn die Maßeinheiten zeitbasiert sind. Der Standardwert ist 0. Sie können den zusätzlichen Zeitaufwand für die Durchführung von Aufgaben wie die Reparatur eines Geräts, die Auslieferung eines Pakets oder die Überprüfung von Räumlichkeiten berücksichtigen. AdditionalDistance – Die zusätzlich gefahrene Zeit bei den Stopps. Sie wird zur Gesamtstrecke der Route hinzugefügt. Die Einheiten für diesen Attributwert werden vom Parameter Maßeinheiten angegeben. Der Attributwert wird nur dann in die Analyse einbezogen, wenn die Maßeinheiten entfernungsbasiert sind. Der Standardwert ist 0. Im Allgemeinen befindet sich die Position eines Stopps (z. B. ein Haus) nicht direkt auf der Straße, sondern etwas davon zurückgesetzt. Dieser Attributwert kann verwendet werden, um die Entfernung zwischen der tatsächlichen Position des Stopps und seiner Position an der Straße zu modellieren, wenn es wichtig ist, diese Entfernung in die gesamte Fahrstrecke einzubeziehen. TimeWindowStart – Der früheste Zeitpunkt, zu dem der Stopp angefahren werden kann. Vergewissern Sie sich, dass Sie den Wert als Datums- und Uhrzeitwert angegeben haben, beispielsweise 12.08.2015 00:15. Durch Angabe einer Start- und Endzeit für das Zeitfenster eines Stopps legen Sie fest, wann eine Route den Stopp erreichen sollte. Solange Zeitfenster verwenden aktiviert ist und Sie eine zeitbasierte Einheit für Maßeinheiten ausgewählt haben, versucht das Werkzeug, eine Lösung zu finden, bei der die Gesamtfahrzeit auf ein Minimum reduziert und der Stopp innerhalb des vorgeschriebenen Zeitfensters erreicht wird. Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so beziehen sich die in den Zeitfenstern angegebenen Werte auf die Zeitzone, in der sich der Stopp befindet. Dieses Feld kann einen Nullwert enthalten. Ein Nullwert gibt an, dass ein Fahrzeug zu einem beliebigen Zeitpunkt vor der im TimeWindowEnd-Attribut angegebenen Zeit ankommen kann. Wenn ein Nullwert auch im TimeWindowEnd-Attribut enthalten ist, kann eine Route den Stopp jederzeit erreichen. TimeWindowEnd – Der späteste Zeitpunkt, zu dem der Stopp erreicht werden kann. Vergewissern Sie sich, dass Sie den Wert als Datums- und Uhrzeitwert angegeben haben, beispielsweise 12.08.2015 00:15. Durch Angabe einer Start- und Endzeit für das Zeitfenster eines Stopps legen Sie fest, wann eine Route den Stopp erreichen sollte. Solange Zeitfenster verwenden aktiviert ist und Sie eine zeitbasierte Einheit für Maßeinheiten ausgewählt haben, versucht das Werkzeug, eine Lösung zu finden, bei der die Gesamtfahrzeit auf ein Minimum reduziert und der Stopp innerhalb des vorgeschriebenen Zeitfensters erreicht wird. Werden bei der Lösung eines Problems mehrere Zeitzonen erfasst, so beziehen sich die in den Zeitfenstern angegebenen Werte auf die Zeitzone, in der sich der Stopp befindet. Dieses Feld kann einen Nullwert enthalten. Ein Nullwert gibt an, dass ein Fahrzeug zu einem beliebigen Zeitpunkt nach der im TimeWindowStart-Attribut angegebenen Zeit ankommen kann. Wenn ein Nullwert auch im TimeWindowStart-Attribut enthalten ist, kann eine Route den Stopp jederzeit erreichen. CurbApproach – Gibt die Richtung an, in der ein Fahrzeug den Stopp erreicht bzw. von ihm wegfährt. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):
Die Eigenschaft CurbApproach ist für die Verwendung sowohl in Ländern mit Rechtsverkehr (USA) als auch in Ländern mit Linksverkehr (Großbritannien) konzipiert. Stellen Sie sich zunächst einen Stopp auf der linken Seite eines Fahrzeugs vor. Es befindet sich stets auf der linken Seite, egal ob das Fahrzeug auf der linken oder rechten Seite der Straße fährt. Was sich abhängig von den nationalen Verkehrsregeln ändern kann, ist Ihre Entscheidung, aus welcher Richtung Sie sich dem Stopp nähern, so dass es sich entweder links oder rechts vom Fahrzeug befindet. Wenn Sie beispielsweise einen Stopp erreichen und sich keine Fahrspur zwischen dem Fahrzeug und dem Stopp befinden soll, wählen Sie in den USA die rechte Seite des Fahrzeugs (1), in Großbritannien hingegen die linke Seite des Fahrzeugs (2) aus. | Feature Set |
Measurement_Units | Geben Sie die Einheiten zum Messen und Melden der gesamten Fahrzeit oder Fahrstrecke für die Ausgaberouten an. Mit den für diesen Parameter gewählten Einheiten legen Sie fest, ob das Werkzeug die gemessene Entfernung oder Fahrzeit misst, um die besten Routen zu suchen. Wählen Sie eine Zeiteinheit aus, um die Reisezeit für einen ausgewählten Reisemodus zu minimieren (z. B. Fahr- oder Gehzeit). Um die Reisestrecke für einen angegebenen Reisemodus zu minimieren, wählen Sie eine Entfernungseinheit aus. Von Ihrer Eingabe ist auch abhängig, in welchen Einheiten das Werkzeug die resultierende Gesamtzeit oder -entfernung zurückgibt. Die folgenden Optionen sind verfügbar:
| String |
Analysis_Region (optional) | Geben Sie die zu analysierende Region an. Wird für diesen Parameter kein Wert angegeben, ermittelt das Werkzeug anhand der Position der Eingabepunkte den Namen der Region automatisch. Es wird jedoch empfohlen, den Namen der Region anzugeben, um die Werkzeugausführung zu beschleunigen. Geben Sie zur Angabe der Region einen der folgenden Werte an:
| String |
Reorder_Stops_to_Find_Optimal_Routes (optional) | Geben Sie an, ob die Stopps in der von Ihnen definierten oder in der vom Werkzeug zur Minimierung der Gesamtfahrzeit festgelegten Reihenfolge angefahren werden sollen.
Die Suche nach der optimalen Stoppreihenfolge und den besten Routen wird im Allgemeinen als Lösung für das Problem des Handlungsreisenden (Traveling Salesman Problem, TSP) bezeichnet. | Boolean |
Preserve_Terminal_Stops (optional) | Wenn Stopps für Suche nach optimaler Route neu anordnen aktiviert (oder True) ist, stehen Optionen zum Beibehalten der Start- oder Endstopps zur Verfügung, und das Werkzeug kann die restlichen neu anordnen. Der erste und letzte Stopp werden anhand ihrer Sequenzattributwerte oder ihrer Objekt-ID-Werte festgelegt, wenn die Sequenzwerte gleich Null sind.
Endstopps beibehalten wird ignoriert, wenn Stopps für Suche nach optimaler Route neu anordnen nicht deaktiviert (oder "False") ist. | String |
Return_to_Start (optional) | Legen Sie fest, ob die Routen an derselben Position starten und enden sollen. Mit dieser Option können Sie die Duplizierung des ersten Stopp-Features und die Sequenzierung des doppelten Stopps am Ende vermeiden. Die Startposition der Route ist das Stopp-Feature mit dem niedrigsten Wert im Sequenzattribut. Wenn die Sequenzwerte NULL sind, hat das Stopp-Feature den niedrigsten Objekt-ID-Wert.
| Boolean |
Use_Time_Windows (optional) | Aktivieren Sie diese Option (oder setzen Sie sie auf True), wenn Eingabestopps, die angeben, wann die Route den Stopp erreichen soll, Zeitfenster aufweisen. Sie können Zeitfenster zu Eingabestopps hinzufügen, indem Sie Zeitwerte in die Attribute TimeWindowStart und TimeWindowEnd eingeben.
Die Ausführung des Werkzeugs nimmt bei aktivierter Option Zeitfenster verwenden (oder True) auch dann etwas mehr Zeit in Anspruch, wenn die Eingabestopps Zeitfenster aufweisen. Daher wird empfohlen, diese Option nach Möglichkeit zu deaktivieren (auf "False" zu setzen). | Boolean |
Time_of_Day (optional) | Gibt die Uhrzeit und das Datum für den Beginn der Routen an. Wenn Sie den Reisemodus "Fahren" modellieren und das aktuelle Datum und die aktuelle Uhrzeit als Wert für diesen Parameter angeben, verwendet das Werkzeug Live-Verkehrsbedingungen, um die besten Routen zu suchen. Die gesamte Fahrzeit hängt dann von den Verkehrsbedingungen ab. Die Angabe einer Uhrzeit führt zu genaueren Routen und zu einer genaueren Schätzung der Fahrzeiten, da die Fahrzeiten von den Verkehrsbedingungen abhängen, die zu dieser Zeit herrschen. Mit dem Parameter Zeitzone für Uhrzeit wird angegeben, ob sich die Uhrzeit und das Datum auf UTC oder die Zeitzone, in der sich die Einrichtung oder der Stopp befindet, bezieht. Das Werkzeug ignoriert diesen Parameter, wenn die Option Maßeinheiten nicht auf eine zeitbasierte Einheit festgelegt ist. | Date |
Time_Zone_for_Time_of_Day | Gibt die Zeitzone des Parameters Uhrzeit an.
| String |
UTurn_at_Junctions (optional) |
Die Wendenregel an Knoten. Das Zulassen von Wenden bedeutet, dass der Solver an einem Knoten wenden und auf der gleichen Straße wieder zurückführen kann. Da diese Knoten Straßenkreuzungen und Sackgassen darstellen können, kann es sein, dass verschiedene Fahrzeuge an manchen Knoten wenden können und an anderen wiederum nicht. Dies hängt davon ab, ob der Knoten eine Kreuzung oder eine Sackgasse darstellt. Zu diesem Zweck wird der Wendenregel-Parameter implizit angegeben, indem die Anzahl der mit der Kreuzung verbundenen Kanten bzw. Straßen angegeben wird, was als Valenz der Knoten bezeichnet wird. Die zulässigen Werte für diesen Parameter sowie eine Beschreibung der jeweiligen Bedeutung in Bezug auf die Valenz der Knoten sind unten aufgelistet.
Dieser Parameter wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt. | String |
Point_Barriers (optional) |
Geben Sie einen oder mehrere Punkte an, die als Zeitbeschränkungen dienen bzw. die die für das Passieren der betreffenden Straßen zusätzlich veranschlagte Zeit oder Entfernung anzeigen. Mit einer Punkt-Barriere kann beispielsweise ein umgestürzter Baum auf einer Straße oder eine Zeitverzögerung wegen des Halts an einem Bahnübergang angezeigt werden. Mit dem Werkzeug können maximal 250 Punkte als Barrieren hinzugefügt werden. Bei der Angabe von Punkt-Barrieren können Sie mithilfe von Attributen deren jeweilige Eigenschaften, darunter Name oder Barrierentyp, festlegen. Für die Punkt-Barrieren können folgende Attribute angegeben werden: Name: Der Name der Barriere. BarrierType: Gibt an, ob die Punkt-Barriere den Verkehr vollständig beschränkt oder ob beim Überschreiten der Barriere ein Mehraufwand an Zeit oder Entfernung entsteht. Der Wert für dieses Attribut wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):
Additional_Time: – Gibt die zusätzliche Fahrzeit an, die durch das Passieren der Barriere entsteht. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und ausschließlich für zeitbasierte Maßeinheiten. Dieser Feldwert muss größer oder gleich Null sein, und seine Einheiten werden vom Parameter "Maßeinheiten" vorgegeben. Additional_Distance: Gibt an, wie viel Entfernung durch das Passieren der Barriere hinzugefügt wird. Dieses Feld gilt nur für Barrieren vom Typ "Zusatzkosten" und ausschließlich für entfernungsbasierte Maßeinheiten. Dieser Feldwert muss größer oder gleich Null sein, und seine Einheiten werden vom Parameter "Maßeinheiten" vorgegeben. | Feature Set |
Line_Barriers (optional) | Geben Sie eine oder mehr Linien an, die das Überfahren von Linien, die Straßen überschneiden, verbieten. Mit einer Linien-Barriere kann beispielsweise eine Parade oder Demonstration modelliert werden, die den Verkehr über mehrere Straßenzüge hinweg blockiert. Mit einer Linien-Barriere können außerdem schnell mehrere Straßen abgeriegelt werden, um unerwünschte Teile des Straßennetzes aus den möglichen Routen auszuschließen. Die Anzahl der Straßen, die mithilfe des Werkzeugparameters "Linien-Barrieren" beschränkt werden können, ist begrenzt. Es wird zwar keine Begrenzung für die Anzahl der Linien genannt, die Sie als Linien-Barrieren angeben können, doch die Gesamtzahl der Straßen, die von allen Linien überschnitten werden, darf 500 nicht überschreiten. Bei der Angabe von Linien-Barrieren können Sie mithilfe des folgenden Attributs für jede eine Eigenschaft "Name" festlegen: Name: Der Name der Barriere. | Feature Set |
Polygon_Barriers (optional) |
Geben Sie Polygone an, die entweder den Verkehr vollständig beschränken oder für die mehr Zeit oder eine längere Strecke für das Durchfahren der von den Polygonen überschnittenen Straßen veranschlagt wird. Der Service begrenzt die Anzahl der Straßen, die Sie mithilfe des Parameters "Polygon-Barrieren" beschränken können. Es wird zwar keine Begrenzung für die Anzahl der Polygone genannt, die Sie als Polygon-Barrieren angeben können, doch die Gesamtzahl der Straßen, die von allen Polygonen überschnitten werden, darf 2,000 nicht überschreiten. Bei der Angabe von Polygon-Barrieren können Sie mithilfe von Attributen deren jeweilige Eigenschaften, darunter Name oder Barrierentyp, festlegen. Für die Polygon-Barrieren können folgende Attribute angegeben werden: Name: Der Name der Barriere. BarrierType: Gibt an, ob die Barriere den Verkehr vollständig beschränkt oder ob beim Durchfahren der Barriere ein Mehraufwand an Zeit oder Entfernung entsteht. Der Feldwert wird als eine der nachfolgenden Ganzzahlen angegeben (verwenden Sie nicht den Namen in Klammern, sondern den numerischen Code):
ScaledTimeFactor: Um diesen Faktor erhöht sich die Fahrzeit durch die Straßen, die von der Barriere überschnitten werden. Dieses Feld gilt nur für Barrieren vom Typ "Kostenfaktor" und ausschließlich für zeitbasierte Maßeinheiten. Der Feldwert muss größer 0 sein. ScaledDistanceFactor: Um diesen Faktor erhöht sich die zurückgelegte Entfernung durch die Straßen, die von der Barriere überschnitten werden. Dieses Attribut gilt nur für Barrieren vom Typ "Kostenfaktor" und ausschließlich für entfernungsbasierte Maßeinheiten. Der Attributwert muss größer als null sein. | Feature Set |
Use_Hierarchy (optional) | Geben Sie an, ob beim Suchen der kürzesten Wege zwischen Stopps die Hierarchie verwendet werden soll.
Das Werkzeug verwendet die Hierarchie automatisch, wenn die geradlinige Entfernung zwischen Einrichtungen und Bedarfspunkten 50 Meilen (80,46 km) überschreitet, selbst wenn Sie eingestellt haben, dass die Hierarchie von diesem Parameter nicht verwendet werden soll. Dieser Parameter wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt. Beim Modellieren eines benutzerdefinierten Fußgängermodus wird empfohlen, die Hierarchie auszuschalten, da sie für motorisierte Fahrzeuge vorgesehen ist. | Boolean |
Restrictions (optional) | Geben Sie an, welche Einschränkungen von dem Werkzeug bei der Ermittlung der besten Routen berücksichtigt werden sollen. Einschränkungen sind Präferenzen oder Anforderungen eines Fahrers. In den meisten Fällen führen Einschränkungen dazu, dass Straßen unzulässig werden, sie können jedoch auch dazu führen, dass sie vermieden oder bevorzugt werden. Wird beispielsweise die Einschränkung "Mautstraßen vermeiden" verwendet, enthält die berechnete Route Mautstraßen nur dann, wenn das Befahren solcher Straßen zum Erreichen eines Stopps absolut notwendig ist. Mit Höheneinschränkung können sämtliche Abstände unterhalb der Fahrzeughöhe vermieden werden. Wenn Sie korrosive Materialien mit dem Fahrzeug transportieren, wird mit der Einschränkung "Gefahrgut verboten" vermieden, dass diese Materialien auf Straßen transportiert werden, die für solche Transporte als unzulässig markiert sind. Die von Ihnen für diesen Parameter eingegebenen Werte werden ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt. Nachfolgend finden Sie eine Liste der verfügbaren Einschränkungen und eine kurze Beschreibung. Das Werkzeug unterstützt die folgenden Einschränkungen:
| String |
Attribute_Parameter_Values (optional) | Geben Sie zusätzliche erforderliche Werte für Einschränkungen an, z. B. das Gewicht eines Fahrzeugs für die Gewichtseinschränkung. Außerdem können Sie mit dem Attributparameter angeben, ob aufgrund von Einschränkungen das Fahren auf Straßen, auf denen die Einschränkung gilt, unzulässig ist bzw. vermieden oder bevorzugt wird. Wenn aufgrund der Einschränkung Straßen vermieden oder bevorzugt werden sollen, können Sie den Grad der Vermeidung bzw. Bevorzugung mit diesem Parameter genauer angeben. Sie können beispielsweise auswählen, mautpflichtige Straßen grundsätzlich nicht zu verwenden, soweit als möglich zu meiden oder sogar sehr zu bevorzugen. Wenn Sie den Parameter Attributparameterwerte aus einer Feature-Class angeben, müssen die Feldnamen in der Feature-Class mit den nachfolgend beschriebenen Feldern übereinstimmen: AttributeName: Listet den Namen der Einschränkung auf. ParameterName: Listet den Namen des mit der Einschränkung verknüpften Parameters auf. Eine Einschränkung kann abhängig von der geplanten Verwendung einen oder mehrere ParameterName-Feldwerte enthalten. ParameterValue: Der Wert für den vom Werkzeug verwendeten "ParameterName" bei der Auswertung der Beschränkung. "Attributparameterwerte" hängt vom Parameter "Einschränkungen" ab. Das Feld "ParameterValue" ist nur zutreffend, wenn als Name der Einschränkung der Wert für den Parameter "Einschränkungen" angegeben wird. In "Attributparameterwerte" verfügt jede Einschränkung (als "AttributeName" aufgelistet) über einen Wert für das Feld "ParameterName", eine Verwendung von Einschränkungen, mit der angegeben wird, ob von der Einschränkung das Fahren auf Straßen, die mit der Einschränkung verknüpft sind, nicht zugelassen, vermieden oder bevorzugt wird, und der Grad, in dem diese Straßen vermieden oder bevorzugt werden sollen. "ParameterName" der Verwendung von Einschränkungen kann einer der folgenden Zeichenfolgenwerte oder der ihm entsprechende numerische Wert in Klammern zugewiesen werden:
In den meisten Fällen können Sie für "Verwendung von Beschränkungen" den Standardwert ("PROHIBITED") verwenden, wenn die Einschränkung von einer Fahrzeugeigenschaft, wie z. B. der Höhe, abhängig ist. In einigen Fällen hängt der Wert für die Verwendung der Einschränkung jedoch von den bevorzugten Verbindungen ab. Für die Einschränkung "Mautstraßen vermeiden " etwa ist der Standardwert für den Parameter "Verwendung von Einschränkungen" die Einstellung AVOID_MEDIUM. Dies bedeutet, dass das Werkzeug bei Verwendung dieser Einschränkung versucht, Mautstraßen nach Möglichkeit zu meiden. AVOID_MEDIUM weist außerdem darauf hin, wie wichtig es ist, Mautstraßen bei der Ermittlung der optimalen Route zu meiden. Dies hat eine mittlere Priorität. Durch Auswahl von AVOID_LOW wird der Vermeidung von Mautstraßen geringere Bedeutung zugeordnet; durch Auswahl von AVOID_HIGH hingegen wird der Vermeidung eine höhere Bedeutung zugeordnet, wodurch die Erstellung einer längeren Route zur Vermeidung von Mautstraßen für den Service akzeptabler wird. Bei der Auswahl von PROHIBITED ist das Befahren von Mautstraßen völlig unzulässig, wobei eine Route keinesfalls einen Teil einer Mautstraße enthalten kann. Beachten Sie, dass für einige Personen das Ziel darin besteht, Mautstraßen zu vermeiden bzw. zu verhindern und damit auch die Bezahlung von Mautgebühren zu vermeiden, und dass andere hingegen Mautstraßen bevorzugen, da sie der Vermeidung von hohem Verkehrsaufkommen mehr Bedeutung beimessen als der Bezahlung von Mautgebühren. Im letzteren Fall würden Sie PREFER_LOW, PREFER_MEDIUM oder PREFER_HIGH als Wert für "Verwendung der Einschränkung" auswählen. Je höher die Prioritätseinstellung, desto mehr versucht das Werkzeug, das Fahren auf Straßen, die dieser Einschränkung zugeordnet sind, zu meiden. | Record Set |
Route_Shape (optional) | Geben Sie den Typ der Routen-Features an, die vom Werkzeug ausgegeben werden. Der Parameter kann mit einem der folgenden Werte angegeben werden:
Wenn für den Parameter Routen-Shape die Einstellung "Echtes Shape" festgelegt wurde, kann die Generalisierung des Routen-Shapes mit dem entsprechenden Wert für den Parameter Vereinfachungstoleranz für Routenlinien weiter gesteuert werden. Unabhängig von dem für den Parameter Routen-Shape gewählten Wert wird die optimale Route immer bestimmt, indem die Fahrzeit oder Fahrstrecke minimiert wird, nie durch die geradlinige Strecke zwischen Stopps. Dies bedeutet, dass sich nur die Routen-Shapes und nicht die zugrunde liegenden Straßen, die beim Ermitteln der Route berücksichtigt werden, unterscheiden. | String |
Route_Line_Simplification_Tolerance (optional) | Geben Sie an, wie stark Sie die Geometrie von Ausgabelinien für Routen, Wegbeschreibungen und Routenkanten vereinfachen möchten. Dieser Parameter wird vom Werkzeug ignoriert, wenn für den Parameter Routen-Shape nicht "Echtes Shape" festgelegt wurde. Bei der Vereinfachung werden kritische Punkte auf einer Route beibehalten, wie Übergänge an Kreuzungen, um das wesentliche Shape der Route zu definieren, und andere Punkte entfernt. Die angegebene Vereinfachungsentfernung stellt den maximal zulässigen Versatz dar, den die vereinfachte Linie von der ursprünglichen Linie abweichen kann. Durch die Vereinfachung einer Linie wird die Anzahl der Stützpunkte in der Routengeometrie reduziert. Dadurch wird die Ausführungszeit des Werkzeugs verbessert. | Linear unit |
Populate_Route_Edges (optional) | Geben Sie an, ob vom Werkzeug Kanten für die einzelnen Routen generiert werden sollen. Routenkanten stellen die einzelnen Straßen-Features oder andere ähnliche Features dar, die von einer Route durchlaufen werden. Der Ausgabe-Layer "Routenkanten" wird häufig verwendet, um zu ermitteln, welche Straßen oder Wege von den resultierenden Routen am meisten oder wenigsten genutzt werden.
| Boolean |
Populate_Directions (optional) | Geben Sie an, ob vom Werkzeug Wegbeschreibungen für die einzelnen Routen generiert werden sollen.
| Boolean |
Directions_Language (optional) | Geben Sie an, in welcher Sprache Wegbeschreibungen generiert werden sollen. Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen aktiviert oder dafür "True" festgelegt wurde. Bei der Angabe des Parameterwertes ist einer der folgenden aus zwei oder fünf Zeichen bestehenden Sprachcodes zu verwenden:
Wenn ein nicht unterstützter Sprachcode angegeben wird, werden die Wegbeschreibungen in der Standardsprache Englisch ausgegeben. | String |
Directions_Distance_Units (optional) |
Geben Sie die Einheiten für das Anzeigen der Fahrstrecke in den Wegbeschreibungen an. Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen aktiviert oder auf True gesetzt wurde.
| String |
Directions_Style_Name (optional) | Geben Sie den Namen des Formatierungsstils für die Wegbeschreibung an. Dieser Parameter wird nur verwendet, wenn der Parameter Wegbeschreibungen füllen aktiviert oder auf True gesetzt wurde. Der Parameter kann mit den folgenden Werten angegeben werden:
| String |
Travel_Mode (optional) | Wählen Sie die Transportmethode für die Modellierung in der Analyse aus.
Zum Modellieren eines benutzerdefinierten Lkw-Modus können Sie anhand der folgenden Schritte vorgehen:
Zur Modellierung eines Fußgängers mit speziellen Routenanforderungen gehen Sie in gleicher Weise wie beim Einrichten eines benutzerdefinierten Lkw-Modus vor, jedoch mit den folgenden Unterschieden:
| String |
Impedance (optional) | Legen Sie die Impedanz fest. Das ist ein Wert, der den Aufwand bzw. die Kosten des Reisens entlang von Straßensegmenten oder anderen Teilen des Verkehrsnetzes repräsentiert. Die Reiseentfernung ist eine Impedanz; die Länge einer Straße in Kilometern ist als eine Impedanz denkbar. Die Reiseentfernung ist in diesem Sinne für alle Modi dieselbe – ein Kilometer ist für einen Fußgänger dasselbe wie für ein Auto. (Was sich ändern kann, sind die Wege, auf denen die verschiedenen Reisemodi absolviert werden können, was sich auf die Entfernung zwischen Punkten auswirkt – und das wird durch die Reisemodus-Einstellungen modelliert.) Auch die Fahrzeit kann eine Impedanz sein; ein Auto benötigt auf einer leeren Straße möglicherweise nur eine Minute für einen Kilometer. Die Fahrzeiten können sich je nach Reisemodus ändern – ein Fußgänger kann für denselben Kilometer mehr als 20 Minuten benötigen, weshalb es wichtig ist, die richtige Impedanz für den von Ihnen modellierten Reisemodus zu wählen. Ihnen stehen folgende Impedanzwerte zur Auswahl:
Der von Ihnen für diesen Parameter eingegebene Wert wird ignoriert, es sei denn, Reisemodus ist auf Benutzerdefiniert festgelegt, was dem Standardwert entspricht. Wenn Sie Fahrzeit, LKW-Zeit oder Gehzeit wählen, muss der Parameter Maßeinheiten auf einen zeitbasierten Wert festgelegt werden. Wenn Sie Reiseentfernung für Impedanz wählen, müssen die Maßeinheiten entfernungsbasiert sein. | String |
Codebeispiel
Location-Allocation berechnen – Beispiel
Mit dem folgenden Python-Skript wird veranschaulicht, wie Sie das Werkzeug "FindRoutes" in einem Skript verwenden.
import arcpy
import time
import datetime
import sys
username = "<your user name>"
password = "<your password>"
FindRoute_service = "http://logistics.arcgis.com/arcgis/services;World/Route;{0};{1}".format(username, password)
#Add the geoprocessing service as a toolbox. Use an alias when importing
arcpy.ImportToolbox(FindRoute_service, "agol")
#Set the variables to call the tool
stops = r'C:/data/Inputs.gdb/Stops'
output_routes = r'C:/data/Results.gdb/Routes'
output_route_edges = r'C:/data/Results.gdb/Route_Edges'
output_directions = r'C:/data/Results.gdb/Directions'
output_stops = r'C:/data/Results.gdb/Stops'
#Call the tool
result = arcpy.agol.FindRoutes(stops, "Minutes",
Reorder_Stops_to_Find_Optimal_Routes=True,
Preserve_Terminal_Stops="Preserve First",
Time_of_Day=datetime.datetime(2014, 2, 10, 8, 0, 0))
#Check the status of the result object every 0.5 seconds
#until it has a value of 4(succeeded) or greater
while result.status < 4:
time.sleep(0.5)
#print any warning or error messages returned from the tool
result_severity = result.maxSeverity
if result_severity == 2:
print "An error occured when running the tool"
print result.getMessages(2)
sys.exit(2)
elif result_severity == 1:
print "Warnings were returned when running the tool"
print result.getMessages(1)
#Get the output routes and save to a local geodatabase
result.getOutput(1).save(output_routes)
result.getOutput(2).save(output_route_edges)
result.getOutput(3).save(output_directions)
result.getOutput(4).save(output_stops)
Umgebungen
Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.