Skip To Content

Projizieren

Zusammenfassung

Projiziert räumliche Daten von einem Koordinatensystem in ein anderes.

Verwendung

  • Wenn die Eingabe-Feature-Class oder das Dataset ein unbekanntes oder nicht angegebenes Koordinatensystem aufweist, können Sie das Koordinatensystem des Eingabe-Datasets mit dem Parameter Eingabe-Koordinatensystem angeben. So können Sie das Koordinatensystem der Daten angeben, ohne die Eingabedaten zu ändern (was nicht möglich ist, wenn die Eingabe ein schreibgeschütztes Format hat). Sie können auch das Werkzeug Projektion definieren verwenden, um dem Dataset dauerhaft ein Koordinatensystem zuzuweisen.

  • Coverages, VPF-Coverages, Raster-Datasets und Raster-Kataloge werden nicht als Eingaben für dieses Werkzeug unterstützt. Verwenden Sie das Werkzeug Raster projizieren zum Projizieren von Raster-Datasets.

  • Der Parameter Geographische Transformation des Werkzeugs ist optional. Wenn keine geographische oder Datumstransformation erforderlich ist, wird keine Dropdown-Liste im Parameter angezeigt und er wird leer gelassen. Wenn eine Transformation erforderlich ist, wird auf Grundlage der Eingabe- und Ausgabedatumsangaben eine Dropdown-Liste generiert und eine Standardtransformation ausgewählt.

    • Eine geographische Transformation ist z. B. nicht erforderlich, wenn eine Projektion von GCS_North_American_1983 zu NAD_1983_UTM_Zone_12N durchgeführt wird, weil das Eingabe- und Ausgabe-Koordinatensystem jeweils das Datum "NAD_1983" verwenden. Wenn eine Projektion jedoch von GCS_North_American_1983 zu WGS_1984_UTM_Zone_12N durchgeführt wird, ist eine geographische Transformation erforderlich, weil das Eingabe-Koordinatensystem das Datum "NAD_1983" und das Ausgabe-Koordinatensystem das Datum "WGS_1984" verwendet.
      Tipp:

      Transformationen sind bidirektional. Werden Daten z. B. von WGS 1984 nach NAD 1927 konvertiert, können Sie eine Transformation mit dem Namen NAD_1927_to_WGS_1984_3 wählen. Das Werkzeug wendet diese dann korrekt an.

    • Eine Liste der Transformationen und deren Einsatzbereiche finden Sie im folgenden Knowledge Base-Artikel: How To: Auswählen der richtigen geographischen (Datums-)Transformation beim Projizieren zwischen Daten.

  • Der Workspace in_memory wird nicht als Speicherort unterstützt, in den das Ausgabe-Dataset geschrieben werden kann.

  • Wenn die unten aufgeführten komplexen Datentypen projiziert werden, müssen bestimmte Vorgänge auf den resultierenden Daten ausgeführt werden:

    • Ein Feature-Dataset, das ein Netzwerk-Dataset enthält: Das Netzwerk-Dataset muss erneut erstellt werden.
    • Ein Feature-Dataset, das eine Topologie enthält: Die Topologie sollte erneut überprüft werden.

  • Wenn die Eingabe an Beziehungsklassen beteiligt ist (wie bei Feature-bezogenen Annotationen), wird die Beziehungsklasse in die Ausgabe übertragen. Dies gilt jedoch nicht für Beziehungen zu beteiligten Standalone-Tabellen.

  • Abhängig von den Koordinaten des Eingabe-Features und dem Horizont (gültige Ausdehnung) des Ausgabe-Koordinatensystems werden Multipoint, Linie und Polygon möglicherweise bei der Projektion ausgeschnitten oder in mehrere Teile aufgeteilt. Features, die vollständig außerhalb des Horizonts liegen, werden mit einem Null-Shape in die Ausgabe geschrieben. Diese können mit dem Werkzeug Geometrie reparieren gelöscht werden.

  • Feature-Classes, die zu einem geometrischen Netzwerk gehören, können nicht unabhängig projiziert werden. Das gesamte Feature-Dataset, das das Netzwerk enthält, muss projiziert werden.

  • Zahlreiche Geoverarbeitungswerkzeuge berücksichtigen die Umgebungseinstellung Ausgabe-Koordinatensystem, und in vielen Workflows können Sie diese Umgebungseinstellung anstelle des Werkzeugs Projizieren verwenden. Beispielsweise wird die Umgebungseinstellung "Ausgabe-Koordinatensystem" vom Werkzeug Vereinigen verwendet. Dies bedeutet, dass Sie mehrere Feature-Classes vereinigen können, die sich in unterschiedlichen Koordinatensystemen befinden, und die vereinigte Ausgabe in eine Feature-Class in einem völlig anderen Koordinatensystem schreiben können.

    Weitere Informationen zu Geoverarbeitungsumgebungen

  • Auswahl- und Definitionsabfragen für Layer werden von diesem Werkzeug ignoriert – alle Features in dem vom Layer referenzierten Dataset werden projiziert. Wenn Sie nur selektierte Features projizieren möchten, können Sie mit dem Werkzeug Features kopieren ein temporäres Dataset erstellen, das nur die ausgewählten Features enthält, und dieses Zwischen-Dataset als Eingabe für das Werkzeug Projizieren verwenden.

  • Wenn eine Feature-Class in einem Feature-Dataset als Eingabe verwendet wird, kann die Ausgabe nicht in dasselbe Feature-Dataset geschrieben werden. Der Grund ist, dass alle Feature-Classes in einem Feature-Dataset dasselbe Koordinatensystem aufweisen müssen. In diesem Fall wird die Ausgabe-Feature-Class in die Geodatabase geschrieben, die das Feature-Dataset enthält.

  • Wenn der Parameter Shape beibehalten aktiviert ist, werden Ausgabe-Features erstellt, die ihre wahre projizierte Position präziser darstellen. Shape beibehalten ist vor allem in den Fällen hilfreich, in denen eine Linien- oder Polygongrenze als lange, gerade Linie mit einige Stützpunkten digitalisiert ist. Wenn die Option Shape beibehalten nicht aktiviert ist, werden die vorhandenen Stützpunkte der Eingabelinie oder Polygongrenze projiziert, und das Ergebnis kann ein Feature sein, das in der neuen Projektion nicht genau verortet ist. Wenn Shape beibehalten aktiviert ist (preserve_shape="PRESERVE_SHAPE" in Python), werden dem Feature vor der Projektion zusätzliche Stützpunkte hinzugefügt. Diese zusätzlichen Stützpunkte behalten das projizierte Shape des Features bei. Mit dem Parameter Maximale Abweichung bei Versatz wird gesteuert, wie viele zusätzliche Stützpunkte hinzugefügt werden. Der Wert des Parameters gibt die maximale Entfernung an, die das projizierte Feature von der genauen projizierten Position, die vom Werkzeug berechnet wurde, versetzt liegen darf. Wenn der Wert klein ist, werden weitere Stützpunkte hinzugefügt. Wählen Sie einen für Sie passenden Wert aus. Wenn die projizierte Ausgabe beispielsweise für die allgemeine kartografische Anzeige mit kleinen Maßstäben bestimmt ist, kann eine große Abweichung akzeptabel sein. Wenn die projizierte Ausgabe für Analysen kleiner Bereiche mit großem Maßstab vorgesehen ist, ist möglicherweise eine kleinere Abweichung nötig.

  • Um eine vertikale Transformation durchzuführen, aktivieren Sie im Dialogfeld den optionalen Parameter Vertikal. Der Parameter Vertikal ist standardmäßig deaktiviert und wird nur dann aktiviert, wenn die Eingabe- und Ausgabe-Koordinatensysteme über ein vertikales Koordinatensystem verfügen und die Koordinaten der Eingabe-Feature-Class Z-Werte aufweisen. Außerdem muss ein zusätzliches Installationsprogramm für Daten (Koordinatensystemdaten) im System installiert werden.

    Wenn Sie das Ausgabe-Koordinatensystem auswählen, können Sie das geographische oder das projizierte Koordinatensystem sowie ein vertikales Koordinatensystem auswählen. Wenn sich die vertikalen Eingabe- und Ausgabe-Koordinatensysteme unterscheiden, sind eine geeignete vertikale und eine optionale geographische (Datums-) Transformation verfügbar. Wenn eine Transformation in entgegengesetzter Richtung zu seiner Definition angewendet werden soll, wählen Sie den Eintrag mit der Tilde (~) vor dem Namen.

Syntax

Project_management (in_dataset, out_dataset, out_coor_system, transform_method, {in_coor_system}, {preserve_shape}, {max_deviation}, {vertical})
ParameterErklärungDatentyp
in_dataset

Die Feature-Class, der Feature-Layer oder das Feature-Dataset, die/der/das projiziert werden soll.

Feature Layer; Feature Dataset
out_dataset

Das Ausgabe-Dataset, in das die Ergebnisse geschrieben werden.

Feature Class; Feature Dataset
out_coor_system

Gültige Werte sind ein Raumbezugsobjekt, eine Datei mit der Erweiterung PRJ oder die Zeichenfolgendarstellung eines Koordinatensystems.

Coordinate System
transform_method
[transform_method,...]

Sie können diese Methode zum Konvertieren von Daten von einem geographischen Koordinatensystem oder Datum in ein anderes verwenden. Dieser optionale Parameter ist möglicherweise erforderlich, wenn das Eingabe- und das Ausgabekoordinatensystem unterschiedliche Datumswerte aufweisen.

Tipp:

Transformationen sind bidirektional. Werden Daten z. B. von WGS 1984 nach NAD 1927 konvertiert, können Sie eine Transformation mit dem Namen NAD_1927_to_WGS_1984_3 wählen. Das Werkzeug wendet diese dann korrekt an. Wenn keine Transformation angegeben ist, wird die Standardtransformation verwendet. Diese Standardtransformation ist für allgemeine Zuordnungsanwendungen, jedoch möglicherweise nicht für Anwendungen geeignet, die eine exakte Positionsgenauigkeit erfordern.

String
in_coor_system
(optional)

Das Koordinatensystem der Eingabe-Feature-Class oder des Eingabe-Datasets. Wenn die Eingabe ein unbekanntes Koordinatensystem aufweist bzw. kein Koordinatensystem angegeben ist, können Sie das Koordinatensystem der Daten angeben, ohne die Eingabedaten zu ändern (was gar nicht möglich ist, wenn die Eingabe in einem schreibgeschützten Format vorliegt).

Coordinate System
preserve_shape
(optional)

Fügt den Ausgabelinien oder -polygonen Stützpunkte hinzu, sodass deren projiziertes Shape genauer ist.

  • NO_PRESERVE_SHAPEFügt den Ausgabelinien oder Polygonen keine zusätzlichen Stützpunkte hinzu. Dies ist die Standardeinstellung.
  • PRESERVE_SHAPEFügt den Ausgabelinien oder Polygonen bei Bedarf zusätzliche Stützpunkte hinzu, sodass deren projiziertes Shape genauer ist.
Boolean
max_deviation
(optional)

Legt fest, wie weit eine projizierte Linie oder ein projiziertes Polygon von seiner exakten projizierten Position abweichen darf, wenn die Option preserve_shape="PRESERVE_SHAPE" aktiviert ist. Die Standardeinstellung ist die 100-fache XY-Toleranz des Raumbezugs des Ausgabe-Datasets.

Linear unit
vertical
(optional)

Die Option wird nur dann angewendet, wenn die Eingabe- und Ausgabe-Koordinatensysteme über ein vertikales Koordinatensystem verfügen und die Koordinaten der Eingabe-Feature-Class Z-Werte aufweisen. Zudem sind für viele vertikale Transformationen zusätzliche Datendateien erforderlich, die mit dem Installationspaket für ArcGIS-Koordinatensystemdaten installiert werden müssen.

Diese Option ist nicht mit dem Parameter Shape beibehalten kompatibel.

  • NO_VERTICALDas Werkzeug Projizieren ignoriert Z-Werte von Geometriekoordinaten Die Z-Werte bleiben unverändert. Dies ist die Standardeinstellung.
  • VERTICALWendet die im Parameter "Geographische Transformation" angegebene Transformation an. Das Werkzeug Projizieren transformiert X-, Y- und Z-Werte von Geometriekoordinaten.
Boolean

Codebeispiel

Project – Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion Project im unmittelbaren Modus verwendet wird.

import arcpy

# input data is in NAD 1983 UTM Zone 11N coordinate system
input_features = r"C:/data/Redlands.shp"

# output data
output_feature_class = r"C:/data/Redlands_Project.shp"

# create a spatial reference object for the output coordinate system
out_coordinate_system = arcpy.SpatialReference('NAD 1983 StatePlane California V FIPS 0405 (US Feet)')

# run the tool
arcpy.Project_management(input_features, output_feature_class, out_coordinate_system)
Project – Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Skript veranschaulicht, wie das Werkzeug Project in einem eigenständigen Skript verwendet wird.

# Name: Project_Example2.py

# Description: Project all feature classes in a geodatabase
# Requirements: os module

# Import system modules
import arcpy
import os

# Set environment settings
arcpy.env.workspace = "C:/data/Redlands.gdb"
arcpy.env.overwriteOutput = True

# Set local variables
outWorkspace = "C:/data/Redlands_utm11.gdb"

try:
    # Use ListFeatureClasses to generate a list of inputs 
    for infc in arcpy.ListFeatureClasses():
    
        # Determine if the input has a defined coordinate system, can't project it if it does not
        dsc = arcpy.Describe(infc)
    
        if dsc.spatialReference.Name == "Unknown":
            print('skipped this fc due to undefined coordinate system: ' + infc)
        else:
            # Determine the new output feature class path and name
            outfc = os.path.join(outWorkspace, infc)
            
            # Set output coordinate system
            outCS = arcpy.SpatialReference('NAD 1983 UTM Zone 11N')
            
            # run project tool
            arcpy.Project_management(infc, outfc, outCS)
            
            # check messages
            print(arcpy.GetMessages())
            
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as ex:
    print(ex.args[0])

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen