Standorte berechnen (Network Analyst)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Fügt den Eingabe-Features, die den Netzwerkstandort der Features enthalten, Felder hinzu. Das Werkzeug wird verwendet, um die Netzwerkstandortinformationen als Feature-Attribute zu speichern, um auf diese Weise die Features als Eingaben für einen Netzwerkanalyse-Layer schnell laden zu können.

Verwendung

Syntax

CalculateLocations_na (in_point_features, in_network_dataset, search_tolerance, search_criteria, {match_type}, {source_ID_field}, {source_OID_field}, {position_field}, {side_field}, {snap_X_field}, {snap_Y_field}, {distance_field}, {snap_Z_field}, {location_field}, {exclude_restricted_elements}, {search_query})
ParameterErläuterungDatentyp
in_point_features

Die Eingabe-Features, für die die Netzwerkstandorte berechnet werden.

Für Linien- und Polygon-Features werden nur Geodatabase-Feature-Classes unterstützt, da die Netzwerkstandortinformationen in einem BLOB-Feld gespeichert (im Standortbereiche-Feldparameter angegeben) werden.

Table View
in_network_dataset

Das Netzwerk-Dataset, das zur Berechnung der Standorte verwendet wird.

Wenn ein Sublayer eines Netzwerkanalyse-Layers als Eingabe-Feature verwendet wird, muss der Parameter automatisch auf das Netzwerk-Dataset festgelegt werden, auf das vom Netzwerkanalyse-Layer verwiesen wird.

Network Dataset Layer
search_tolerance

Die Suchtoleranz zur Ermittlung der Eingabe-Features im Netzwerk. Features, die außerhalb der Suchtoleranz liegen, wird kein Standort zugewiesen. Der Parameter umfasst einen Wert und die Einheiten für die Toleranz.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Linear unit
search_criteria
[[Source, SnapType],...]

Legt fest, welche Quellen im Netzwerk-Dataset beim Ermitteln von Standorten durchsucht und welche Teile der Geometrie (auch als Fangtypen bezeichnet) verwendet werden.

Der Parameterwert wird als Liste mit geschachtelten Listen angegeben. Die geschachtelte Liste besteht aus zwei Werten, die den Namen und den Fangtyp für jede Netzwerkquelle angeben. Der Fangtyp wird mit den Schlüsselwörtern "SHAPE", "MIDDLE", "END" oder "NONE" angegeben. Bei Suchen von Standorten wird beispielsweise mit dem Parameterwert [["Straßen", "SHAPE"], ["Streets_ND_Junctions", "NONE"]] angegeben, dass durch die Suche das Shape der Quelle "Straße", aber nicht der Quelle "Streets_ND_Junctions" ermittelt werden kann.

Wenn Sie mehrere Fangtypen für eine einzelne Netzwerkquelle angeben möchten, verwenden Sie eine Kombination der Fangtypschlüsselwörter, die durch einen Unterstrich getrennt werden. MIDDLE_END gibt z. B. an, dass die Standorte in der Mitte oder am Ende der Netzwerkquelle gefangen werden können.

Für Geodatabase-Netzwerk-Datasets können die Fangtypen für jeden Subtype der Netzwerkquelle angegeben werden.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird nur der Fangtyp "Shape" verwendet, auch wenn andere Fangtypen angegeben sind.

Value Table
match_type
(optional)
  • MATCH_TO_CLOSESTVergleicht die neuen Netzwerkstandorte in Bezug auf die nächstgelegene Netzwerkquelle unter den verfügbaren Quellen, für die in den Suchkriterien ein Fangtyp angegeben ist. Dies ist die Standardeinstellung.
  • PRIORITYVergleicht die neuen Netzwerkstandorte in Bezug auf die erste Netzwerkquelle, für die in den Suchkriterien ein Fangtyp angegeben ist. Die Quellen werden in der Prioritätsreihenfolge durchsucht und die Suche wird beendet, wenn der Standort innerhalb der Suchtoleranz gefunden wird.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Boolean
source_ID_field
(optional)

Name des zu erstellenden oder mit der Quellen-ID des berechneten Netzwerkstandorts zu aktualisierenden Feldes. Standardmäßig wird ein Feld mit dem Namen "SourceID" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
source_OID_field
(optional)

Name des zu erstellenden oder mit der Quellen-OID des berechneten Netzwerkstandorts zu aktualisierenden Feldes. Standardmäßig wird ein Feld mit dem Namen "SourceOID" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
position_field
(optional)

Name des zu erstellenden oder mit dem Prozentsatz (entlang einer Linie) des berechneten Netzwerkstandorts zu aktualisierenden Feldes. Standardmäßig wird ein Feld mit dem Namen "PosAlong" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
side_field
(optional)

Name des Feldes, das erstellt oder mit der Kantenseite, auf dem sich das Punkt-Feature im berechneten Netzwerkstandort befindet, aktualisiert werden soll. Standardmäßig wird ein Feld mit dem Namen "SideOfEdge" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
snap_X_field
(optional)

Name des zu erstellenden oder mit der X-Koordinate des berechneten Netzwerkstandorts zu aktualisierenden Felds. Standardmäßig wird ein Feld mit dem Namen "SnapX" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
snap_Y_field
(optional)

Name des zu erstellenden oder mit der Y-Koordinate des berechneten Netzwerkstandorts zu aktualisierenden Felds. Standardmäßig wird ein Feld mit dem Namen "SnapY" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
distance_field
(optional)

Name des zu erstellenden oder mit der Entfernung des Punkt-Features vom berechneten Netzwerkstandort zu aktualisierenden Feldes. Standardmäßig wird ein Feld mit dem Namen "Entfernung" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Field
snap_Z_field
(optional)

Name des zu erstellenden oder mit der Z-Koordinate des berechneten Netzwerkstandorts zu aktualisierenden Felds. Standardmäßig wird ein Feld mit dem Namen "SnapZ" erstellt oder aktualisiert.

Beim Berechnen der Standorte für Linien- oder Polygon-Features wird der Parameter nicht verwendet. In solchen Fällen verwenden Sie "#" als Parameterwert.

Bei der Berechnung von Standorten für Punkt-Features wird der Parameter nur verwendet, wenn das Eingabe-Netzwerk-Dataset eine Konnektivität auf der Grundlage der Z-Koordinaten-Werte der Netzwerkquellen unterstützt. In allen anderen Fällen müssen Sie "#" als Parameterwert verwenden.

Field
location_field
(optional)

Name des Felds, das erstellt oder mit den Standortbereichen der berechneten Netzwerkstandorte für die Linien- oder Polygon-Features aktualisiert wird. Standardmäßig wird ein Feld mit dem Namen "Standorte" erstellt oder aktualisiert.

Der Parameter wird nur für die Berechnung der Standorte für Linien- oder Polygon-Features verwendet. Für Eingabe-Punkt-Features müssen Sie "#" als Parameterwert verwenden.

Field
exclude_restricted_elements
(optional)

Dieser Parameter ist nur anwendbar, wenn die Eingabe-Features aus dem Sublayer eines Netzwerkanalyse-Layers stammen und keine Barrierenobjekte sind. In allen anderen Fällen müssen Sie "#" als Parameterwert verwenden.

  • EXCLUDEGibt an, dass die Netzwerkstandorte nur auf passierbaren Teilen des Netzwerks platziert werden. Dies verhindert, dass Netzwerkstandorte auf Elementen platziert werden, die Sie aufgrund von Einschränkungen oder Barrieren nicht erreichen können. Stellen Sie vor dem Ändern der Netzwerkstandorte mithilfe dieser Option sicher, dass Sie bereits alle Einschränkungsbarrieren zum Netzwerkanalyse-Layer hinzugefügt haben, um die gewünschten Ergebnisse zu erhalten.
  • INCLUDEGibt an, dass die Netzwerkstandorte auf allen Elementen des Netzwerks platziert werden. Die Netzwerkstandorte, die mit dieser Option geändert werden, sind – wenn sie auf eingeschränkten Elementen platziert werden – möglicherweise während des Berechnungsprozesses nicht erreichbar.
Boolean
search_query
[[Source, Expression],...]
(optional)

Gibt eine Abfrage an, um die Suche auf eine Teilmenge der Features innerhalb einer Quell-Feature-Class zu beschränken. Dies empfiehlt sich, wenn keine Features gesucht werden sollen, die für einen Netzwerkstandort ungeeignet sind. Wenn Sie zum Beispiel Schwerpunkte von Polygonen laden und diese nicht auf Ortsstraßen verorten möchten, können Sie eine Abfrage definieren, die nur nach Hauptstraßen sucht.

Der Parameterwert wird als Liste mit geschachtelten Listen angegeben. Die geschachtelte Liste besteht aus zwei Werten, die den Namen und den SQL-Ausdruck für alle Netzwerkquellen angeben. Die Syntax für den SQL-Ausdruck hängt vom Typ der Netzwerk-Quell-Feature-Class ab. Wenn Sie beispielsweise Quell-Feature-Classes abfragen, die in File- oder ArcSDE-Geodatabases, Shapefiles oder SDC gespeichert sind, müssen Sie die Feldnamen in doppelte Anführungszeichen einschließen "CFCC". Wenn Sie in Personal-Geodatabases gespeicherte Quell-Feature-Classes abfragen, müssen Sie die Felder in eckige Klammern einschließen: [CFCC].

Wenn Sie keine Abfrage für eine bestimmte Quelle angeben möchten, verwenden Sie "#" als Wert für den SQL-Ausdruck oder schließen Sie den Quellennamen und den SQL-Ausdruck aus dem Parameterwert aus. Wenn Sie keine Abfrage für alle Netzwerkquellen angeben möchten, können Sie "#" als Parameterwert verwenden.

So wird beispielsweise mit dem Parameterwert [["Straßen","\"CFCC\" = 'A15'"], ["Streets_ND_Junctions",""]] ein SQL-Ausdruck für die Straßen-Quell-Feature-Class und kein Ausdruck für die Streets_ND_Junctions-Quell-Feature-Class angegeben. Beachten Sie, dass die doppelten Anführungszeichen, mit denen der Feldname CFCC eingeschlossen wird, mit umgekehrten Schrägstrichzeichen als Escape-Zeichen versehen sind, um Analysefehler beim Python-Interpreter zu vermeiden.

Value Table

Codebeispiel

CalculateLocations – Beispiel 1 (Python-Fenster)

Berechnen von Standorten für Punkt-Features mithilfe der erforderlichen Parameter.

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Network Analyst/Tutorial/SanFrancisco.gdb"
arcpy.na.CalculateLocations("Analysis/Stores","Transportation/Streets_ND",
                            "5000 Meters",[["Streets","SHAPE"],
                                           ["Streets_ND_Junctions","NONE"]])
CalculateLocations – Beispiel 2 (Python-Fenster)

Berechnen von Standorten für Punkt-Features in einem Subtype einer Netzwerkquelle.

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Network Analyst/Tutorial/Paris.gdb"
arcpy.na.CalculateLocations(
    "Analysis/Warehouses","Transportation/ParisNet","5000 Meters",
    [["Streets : Highways","NONE"],["Streets : Major Roads","NONE"],
     ["Streets : Local Streets","SHAPE"],["ParisNet_Junctions", "NONE"]],
    "MATCH_TO_CLOSEST","SID","SOID","PA","SOE","SnapX","SnapY","Distance",
    "","","","")
CalculateLocations – Beispiel 3 (Python-Fenster)

Berechnen von Standorten für Polygon-Features

import arcpy
arcpy.env.workspace = "C:/ArcTutor/Network Analyst/Tutorial/SanFrancisco.gdb"
arcpy.na.CalculateLocations("Basemap/Parks","Transportation/Streets_ND","",
                            [["Streets","SHAPE"],
                             ["Streets_ND_Junctions","NONE"]],
                            location_field="Locations")
CalculateLocations – Beispiel 4 (eigenständiges Python-Skript)

Im folgenden Python-Skript wird veranschaulicht, wie Sie das Werkzeug "CalculateLocations" in einem eigenständigen Skript verwenden.

# Name: CalculateLocations_ex04.py
# Description: Calculate network locations for fire stations. Make sure that the 
#              fire stations are not located on the freeways.
# Requirements: Network Analyst Extension 

#Import system modules
import arcpy
from arcpy import env


#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")

#Set environment settings
env.workspace = "C:/data/SanFrancisco.gdb"

#Set local variables
inFeatures = "Analysis/FireStations"
inNetworkDataset = "Transportation/Streets_ND"
searchTolerance = "2000 Meters"
searchCriteria = [["Streets","SHAPE"],["Streets_ND_Junctions","NONE"]]
searchQuery = [["Streets",'"FREEWAY" = 0'],["Streets_ND_Junctions",""]]

#Calculate network locations and store them in defaut field names
arcpy.na.CalculateLocations(inFeatures,inNetworkDataset,searchTolerance,
                            searchCriteria,"MATCH_TO_CLOSEST", 
                            exclude_restricted_elements="EXCLUDE",
                            search_query=searchQuery)
print "Script completed successfully."

Umgebung

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Ja
ArcGIS for Desktop Standard: Ja
ArcGIS for Desktop Advanced: Ja
9/11/2013