Minimale Begrenzungsgeometrie (Data Management)
Zusammenfassung
Erstellt eine Feature-Class mit Polygonen, die eine bestimmte minimale Begrenzungsgeometrie einschließlich der einzelnen Eingabe-Features oder einer Gruppe von Eingabe-Features darstellen.
Abbildung
Verwendung
-
Die Ausgabe-Polygon-Features und ihre Attribute hängen vom angegebenen Geometrietyp und der Gruppierungsauswahl ab.
-
Der Parameter Gruppenoption im Dialogfeld (Parameter group_option bei der Skripterstellung) wirkt sich wie folgt auf die Ausgabepolygone und die Attribute aus:
- Mit "NONE" wird keines der Eingabe-Features gruppiert. Für jedes Eingabe-Feature wird ein Ausgabe-Polygon-Feature erstellt; die resultierenden Polygone überschneiden sich möglicherweise. Die Attribute der Eingabe-Features werden in der Ausgabe-Feature-Class beibehalten. Ein neues Feld, "ORIG_FID", wird der Ausgabe-Feature-Class hinzugefügt und auf die IDs des Eingabe-Features gesetzt.
- Mit "ALL" wird für alle Eingabe-Features ein Ausgabe-Polygon-Feature erstellt. Die Attribute der Eingabe-Features werden in der Ausgabe-Feature-Class nicht beibehalten.
- Mit "LIST" wird jeder Satz von Eingabe-Features mit den gleichen Feldwerten im angegebenen Gruppenfeld bzw. den angegebenen Gruppenfeldern als Gruppe behandelt. Für jede Gruppe wird ein Ausgabe-Polygon-Feature erstellt; die resultierenden Polygone überschneiden sich möglicherweise. Die Attribute der Eingabe-Features, die als Gruppenfelder dienen, werden in der Ausgabe-Feature-Class beibehalten.
-
Jeder Geometrietyp kann durch eine oder mehrere eindeutige Messungen charakterisiert werden; diese können der Ausgabe, wie unten beschrieben, optional als neue Felder hinzugefügt werden. Breite, Länge und Durchmesserwerte sind in Feature-Einheiten; die Ausrichtungswinkel werden in Dezimalgrad im Uhrzeigersinn aus Norden angegeben. Das Präfix "MBG_" gibt die minimale Begrenzungsgeometrie an.
- Für "RECTANGLE_BY_AREA", "RECTANGLE_BY_WIDTH" und "ENVELOPE" gibt es folgende neue Felder und Messwerte:
- "MBG_Width": Die Länge der kürzeren Seite des resultierenden Rechtecks.
- "MBG_Length": Die Länge der längeren Seite des resultierenden Rechtecks.
- "MBG_Orientation": Die Ausrichtung der längeren Seite des resultierenden Rechtecks.
- Für "CONVEX_HULL" gibt es folgende neue Felder und Messwerte:
- "MBG_Width": Die kürzeste Entfernung zwischen zwei beliebigen Stützpunkten der konvexen Hülle. (Möglicherweise werden mehr als ein Paar Stützpunkte gefunden, verwendet wird aber das zuerst gefundene Paar.)
- "MBG_Length": Die längste Entfernung zwischen zwei beliebigen Stützpunkten der konvexen Hülle; diese Stützpunkte werden als Antipodenpaare oder Antipodenpunkte bezeichnet. (Möglicherweise werden mehr als ein Paar Stützpunkte gefunden, verwendet wird aber das zuerst gefundene Paar.)
- "MBG_APodX1": Die X-Koordinate des ersten Punkts der Antipodenpaare.
- "MBG_APodY1": Die Y-Koordinate des ersten Punkts der Antipodenpaare.
- "MBG_ApodX2": Die X-Koordinate des zweiten Punkts der Antipodenpaare.
- "MBG_ApodY2": Die Y-Koordinate des zweiten Punkts der Antipodenpaare.
- "MBG_Orientation": Die Ausrichtung auf die imaginäre Linie, die die Antipodenpaare verbindet.
- Für "CIRCLE" gibt es folgendes neues Feld und Messwert:
- "MBG_Diameter": Der Durchmesser des resultierenden Kreises.
- Für "RECTANGLE_BY_AREA", "RECTANGLE_BY_WIDTH" und "ENVELOPE" gibt es folgende neue Felder und Messwerte:
-
Es gibt Eingabe-Features, die zu ungültigen (Null-Flächen-) Ausgabepolygonen führen würden. In diesen Fällen wird bei der Erstellung von Ausgabepolygonen ein kleiner von der Eingabe-Feature-XY-Toleranz abgeleiteter Wert als Breite, Länge oder Durchmesser verwendet. Diese Polygone dienen als "Platzhalter" zum Nachverfolgen von Features. Wenn die resultierenden Polygone bei Nutzung der standardmäßigen Polygonumrisslinie in ArcMap nicht sichtbar sind, wählen Sie eine dickere Umrisslinie aus. Beispiele für diese Fälle:
- Wenn ein Multipoint-Feature nur einen Punkt enthält oder eine Gruppe solcher Features lagegleich ist, wird ein sehr kleines quadratisches Polygon um den Punkt für die Geometrietypen "RECTANGLE_BY_AREA", "RECTANGLE_BY_WIDTH", "CONVEX_HULL" und "ENVELOPE" erstellt; für den Geometrietyp "CIRCLE" ist es ein sehr kleiner Kreis. Zur Angabe dieser Fälle werden die Werte "MBG_Width", "MBG_Length", "MBG_Orientation" und "MBG_Diameter" auf 0 gesetzt.
- Wenn ein Eingabe-Feature oder eine Gruppe von Eingabe-Features fehlerlos ausgerichtet ist (z. B. eine horizontale oder vertikale Linie oder ein 2-Punkt-Multipoint-Feature), wird um das Feature ein Rechteckpolygon mit einer sehr kleinen Breite erstellt. Dies gilt für die Geometrietypen "RECTANGLE_BY_AREA", "RECTANGLE_BY_WIDTH", "CONVEX_HULL" und "ENVELOPE". Um diese Fälle anzugeben, wird der Wert von "MBG_Width" auf 0 gesetzt.
Die Optionen für den Geometrietyp (geometry_type) "CONVEX_HULL", "CIRCLE" und "ENVELOPE" sind nur mit einer ArcInfo-Lizenz verfügbar.
Syntax
Parameter | Erläuterung | Datentyp |
in_features |
Die Eingabe-Features, die vom Typ "Punkt", "Multipunkt", "Linie", "Polygon" oder "Multipatch" sein können. | Feature Layer |
out_feature_class |
Die Ausgabe-Polygon-Feature-Class. | Feature Class |
geometry_type (optional) |
Gibt an, welchen Typ von minimaler Begrenzungsgeometrie die Ausgabepolygone darstellen.
Lizenz: Die Optionen für "CONVEX_HULL", "CIRCLE" und "ENVELOPE" sind nur mit einer ArcInfo-Lizenz verfügbar. | String |
group_option (optional) |
Gibt an, wie die Eingabe-Features gruppiert werden; jede Gruppe wird mit einem Ausgabepolygon umschlossen.
| String |
group_field [group_field,...] (optional) |
Das bzw. die Felder der Eingabe-Features, nach dem bzw. denen Features bei Auswahl von "LIST" als Gruppenoption angeordnet werden. Für die Option "LIST" ist mindestens ein Gruppenfeld erforderlich. Alle Features, die im angegebenen Feld bzw. den Feldern den gleichen Wert haben, werden als Gruppe behandelt. | Field |
mbg_fields_option (optional) |
Gibt an, ob geometrische Attribute in der Ausgabe-Feature-Class hinzugefügt oder weggelassen werden sollen.
| Boolean |
Codebeispiel
Mit dem folgenden Skript im Python-Fenster wird veranschaulicht, wie Sie die Funktion "MinimumBoundingGeometry" im unmittelbaren Modus verwenden.
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.MinimumBoundingGeometry_management("parks.shp", "c:/output/output.gdb/parks_mbg", "RECTANGLE_BY_AREA", "NONE")
Das folgende eigenständige Skript ist ein einfaches Beispiel für die Anwendung der Funktion "MinimumBoundingGeometry" in einer Scripting-Umgebung.
# Name: MinimumBoundingGeometry.py # Description: Use MinimumBoundingGeometry function to find an area # for each multipoint input feature. # Author: ESRI # import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" # Create variables for the input and output feature classes inFeatures = "treeclusters.shp" outFeatureClass = "forests.shp" # Use MinimumBoundingGeometry function to get a convex hull area # for each cluster of trees which are multipoint features arcpy.MinimumBoundingGeometry_management(inFeatures, outFeatureClass, "CONVEX_HULL", "NONE")