Transformieren (Coverage)
Zusammenfassung
Mit diesem Werkzeug werden alle Features im Coverage basierend auf einer Reihe von Ausgangs- und Zielpasspunkten verschoben.
Weitere Informationen zur Funktionsweise von "Transformieren"
Abbildung
Verwendung
-
Das Ausgabe-Coverage muss bereits über eine Tic-Datei verfügen, die die XY-Koordinaten von mindestens zwei Tic-Features in der gewünschten Position sowie Einheiten enthält. Mit Ausnahme der Tics werden alle vorhandenen Features im Ausgabe-Coverage durch Features aus dem Eingabe-Coverage ersetzt.
-
Mit diesem Werkzeug werden alle Koordinaten in einem Coverage skaliert, verzerrt, gedreht und verschoben, jedoch kein "Rubbersheeting" ausgeführt.
-
Die TIC-Datei des Eingabe-Coverages und die TIC-Datei des Ausgabe-Coverages müssen mindestens zwei Tics enthalten, die dieselben IDs haben und für die entsprechenden Positionen in beiden Coverages stehen. Die beiden Coverages müssen keine identischen Tics aufweisen. Es werden nur die Tics, deren IDs beide Coverages gemeinsam haben, bei der Transformation verwendet.
-
Die Toleranzen des Eingabe-Coverages werden transformiert und im Ausgabe-Coverage beibehalten.
-
Bei der Koordinatentransformation wird nur dann ein RMS-Fehler generiert, wenn mindestens ein Tic mehr vorhanden ist als erforderlich.
-
Die Standardeinstellung für den $ANGLE-Wert ist 0, sodass nicht gedrehte Label-Punkte auch in der Ausgabe als nicht gedreht angezeigt werden. Wenn der Wert "$ANGLE" jedoch für einige Labels eingestellt ist, wird der Transformierungswinkel den Label-Winkeln hinzugefügt.
-
Alle im Eingabe-Coverage vorhandenen Annotation-Subclasses werden in das Ausgabe-Coverage transformiert. Position und Größe der Eingabe-Coverage-Annotations werden in das Ausgabe-Coverage transformiert.
-
Vorhandene Section-Tabellen werden in das Ausgabe-Coverage kopiert. Die Beziehung zwischen den Abschnitten und Arcs bleibt bei der Transformation bewahrt.
-
Region-Informationen bleiben erhalten.
-
Die Koordinatengenauigkeit des Ausgabe-Coverages entspricht möglicherweise nicht der Genauigkeit des Eingabe-Coverages. Die Genauigkeit wird durch den entsprechenden Wert aus den Umgebungseinstellungen zum Zeitpunkt der Erstellung des Coverages bestimmt. Hierfür kann das Werkzeug Coverage erstellen verwendet werden.
-
Feature-Attribute (d. h. LENGTH, AREA und PERIMETER) des Eingabe-Coverages werden nach der Transformation aktualisiert.
-
Bei der affinen Transformation (AFFINE) werden alle Koordinaten im Coverage anhand derselben Gleichung skaliert, verzerrt, gedreht und übertragen. Basierend auf einem Minimum von drei Passpunkten können mit dieser Transformation die X-Koordinaten anders als die Y-Koordinaten skaliert werden. Mit einer affinen Transformation können außerdem Ebenenreflexionen ausgeführt werden.
-
Mit der Ähnlichkeitstransformation (SIMILARITY) werden die Coverage-Koordinaten anhand einer Gleichung, deren Parameter aus den Koordinaten generiert werden, skaliert, gedreht und übertragen. Wenn Sie die Option SIMILARITY verwenden, können Sie zwei oder mehr Tics zur Berechnung der Gleichungsparameter einsetzen. Bei dieser Transformation kann keine unterschiedliche Skalierung oder Verzerrung für die X- und Y-Koordinaten angewendet werden. Sie kann jedoch nützlich sein, um eine Kantenanpassung an einer Scanner-Ausgabe vorzunehmen, bei der eine gescannte Karte in mehrere Abschnitte zerschnitten wurde, um auf den Scanner zu passen.
-
Verwenden Sie die Option für die projektive Transformation (PROJECTIVE) nur, wenn das Eingabe-Coverage direkt aus Luftaufnahmen digitalisiert wurde. Die Genauigkeit der Transformation ist von der fotografierten Terrain-Oberfläche, dem Winkel zwischen Kamera und Erdoberfläche sowie der Höhe, aus der das Foto aufgenommen wurde, abhängig. Optimale Ergebnisse werden erzielt, wenn das Foto aus größerer Höhe und von einer Position direkt über einem Teil der Oberfläche, der relativ flach ist, aufgenommen wurde. Bei der projektiven Transformation sind mindestens vier Passpunkte zur Berechnung der Transformation erforderlich.
-
Zur Bestimmung der Transformation wird die Methode der kleinsten Quadrate verwendet. Um Fehler bei den TIC-Positionen oder Tic-IDs zu ermitteln, die zu einer falschen Transformation führen könnten, wird empfohlen, mindestens ein Tic mehr als die erforderliche Mindestanzahl bereitzustellen.
Syntax
Parameter | Erläuterung | Datentyp |
in_cover |
Das Coverage, dessen Koordinaten transformiert werden sollen. | Coverage |
out_cover |
Der Name eines vorhandenen Coverages, das Ziel-Tics enthält. Die Features aus dem Eingabe-Coverage werden in dieses Coverage transformiert. | Coverage |
transform_type (optional) |
Der Typ der auszuführenden Koordinatentransformation:
| String |
Codebeispiel
Das folgende eigenständige Skript veranschaulicht, wie das Werkzeug "Transformieren" auf ein digitalisiertes Coverage angewendet wird. Zuerst erstellt es auf Grundlage eines Vorlagen-Coverages ein leeres Ausgabe-Coverage. Die Vorlage enthält Tics und eine definierte Projektion. Das leere Ausgabe-Coverage wird "Roads" genannt. Anschließend transformiert es die digitalisierten Straßen-Features in das leere Coverage "Roads".
# Name: Transform_Example.py # Description: Transforms digitized road features into a new output coverage # Requirements: ArcInfo Workstation # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" # Set local variables inCover = "roads_dig" outCover = "C:/output/roads" transformType = "AFFINE" # Create the empty output coverage arcpy.Create_arc(outCover, "citylim") # Execute Transform arcpy.Transform_arc(inCover, outCover, transformType) # Print the RMS error print arcpy.GetMessage(4)