VPF-Kachel-Topologie (Coverage)
Zusammenfassung
Mit diesem Werkzeug wird eine kachelübergreifende Topologie für alle gekachelten Coverages in einer Vector Product Format-(VPF-)Database-Library oder eine Topologie für eine einzelne Kachel in einer VPF-Library erstellt.
Mit diesem Werkzeug wird ein VPF-Coverage oder eine VPF-Library aus der Ausgabe von Export nach VPF nachbearbeitet. Aus Effizienzgründen wird empfohlen, eine kachelübergreifende Topologie erst zu erstellen, nachdem Sie alle Coverages in der VPF-Library konvertiert haben.
Weitere Informationen zur Funktionsweise von "VPF-Kachel-Topologie"
Verwendung
-
Der Militärstandard MIL-STD-2407 (28. Juni 1996) optimiert die Definition einer kachelübergreifenden Topologie. Der Befehl "VPF-Kachel-Topologie" wurde aktualisiert, sodass er der neuen Spezifikation entspricht. Der Benutzer kann den optionalen Parameter zur Auswahl des VPF-Standards 93 oder 96 verwenden.
-
"VPF-Kachel-Topologie" kann für alle gekachelten Coverages einer VPF-Library oder für ein einzelnes Coverage innerhalb dieser Library verwendet werden. Der letzte optionale Parameter (VPF_cover) ermöglicht dem Benutzer die Auswahl eines bestimmten Coverages, in das eine kachelübergreifende Topologie eingefügt werden sollte. Es ist jedoch effizienter, "VPF-Kachel-Topologie" erst zu implementieren, nachdem alle Coverages für eine Library aus dem VPF-Format konvertiert wurden.
-
Mit "VPF-Kachel-Topologie" gemäß dem VPF-Standard von 1993 kann die Situation nicht behandelt werden, in der mehr als zwei Kanten entlang einer Kachelgrenze räumlich übereinstimmen. "VPF-Kachel-Topologie" ist nicht in der Lage, den einzelnen Kanten Werte für die linke und rechte Fläche zuzuweisen.
-
Der VPF-Standard von 1996 macht es erforderlich, dass eine kachelübergreifende Topologie für die verbundenen Nodes implementiert wird. Damit der Kachelübergriff einwandfrei funktioniert, muss die Spalte "first_edge" in den verbundenen Node-Tabellen den Typ "Tripel" aufweisen.
-
Da mit "VPF-Kachel-Topologie" Änderungen an der Grundelementedatei in der VPF-Datenbank vorgenommen werden, müssen Sie Kenntnisse über Anforderungen der VPF-Daten besitzen, bevor der kachelübergreifende Prozess korrekt ausgeführt werden kann. Die folgenden Aspekte sind beim Erstellen einer kachelübergreifenden Topologie gemäß dem Standard von 1996 besonders zu beachten:
- Wenn eine Kante eine Kachelgrenze berührt, muss es sich bei diesem Berührungspunkt um einen Node handeln.
- Alle Nodes auf einer Kachelgrenze müssen in der angrenzenden Kachel (sofern vorhanden) vorhanden sein.
- Alle Kanten, die mit einer Innenkachel räumlich übereinstimmen, müssen in beiden Kacheln vorhanden sein.
- Alle Kachelgrenzkanten müssen vollkommen gerade Kanten sein.
Syntax
Parameter | Erläuterung | Datentyp |
VPF_library |
Speicherort der VPF-Database-Library, für die eine kachelübergreifende Topologie erstellt werden soll. | Folder |
sig_digits (optional) |
Die Anzahl der Stellen, die von der Software bei dem Versuch verwendet werden, Node-Koordinaten an Kachelgrenzen auf Übereinstimmung zu prüfen. Je größer der Wert ist, um so kleiner ist die Suchtoleranz. Der Standardwert ist 4. | Long |
VPF_standard (optional) |
Der zu verwendende VPF-Standard. Mit dem VPF-Standard kann eine kachelübergreifende Topologie auf zwei Arten definiert werden.
| Long |
spec_cover (optional) |
Legt fest, ob alle Coverages in der VPF-Library oder nur das angegebene Coverage verarbeitet werden sollen.
| String |
Codebeispiel
Das folgende eigenständige Skript veranschaulicht, wie zwei Coverages in VPF exportiert werden und dann kachelübergreifende Topologie für die VPF-Coverages erstellt wird.
# Name: VPFTile_Example.py
# Description: Exports two coverages to VPF format then builds tile topology
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inCover1 = "coastb"
inCover2 = "coastc"
outFile1 = "C:/output/vpfdb/wlib/coast2"
outFile2 = "C:/output/vpfdb/wlib/coast3"
vpfLibrary = "C:/output/vpfdb"
vpfStandard = 96
specCover = "ALL"
# Execute VPFExport
arcpy.VPFExport_arc(inCover1, outFile1)
arcpy.VPFExport_arc(inCover2, outFile2)
# Execute VPFTile
arcpy.VPFTile_arc(vpfLibrary, "", vpfStandard, specCover)