Skip To Content

Konturlinie mit Barrieren

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der 3D Analyst-Lizenz verfügbar.

Zusammenfassung

Hiermit werden Konturlinien aus einer Raster-Oberfläche erstellt. Die Einbeziehung von Barrieren-Features ermöglicht die unabhängige Erzeugung von Konturen auf beiden Seiten der Barriere.

Verwendung

  • Die aktuelle Version des Werkzeugs Konturlinie mit Barrieren unterstützt nur die Polylinienausgabe. Wenn die Option für Polygonausgaben verwendet wird, wird sie ignoriert, und eine Polylinienausgabe wird erstellt.

  • Wenn Sie über die ArcGIS Spatial Analyst-Erweiterung verfügen, erhalten Sie glattere, aber weniger genaue Konturlinien, indem Sie das Eingabe-Raster mit einer Focal Statistics-Operation und der Option Mittelwert oder mit dem Werkzeug Filter und der Option Low vorverarbeiten.

  • Die Konturlinien werden in die NoData-Zelle des Rasters um eine Entfernung verlängert, die der Hälfte der Zellengröße des Rasters entspricht. Die Konturlinien werden also über einzelne NoData-Zellen erzeugt. Die Konturlinie wird jedoch nur um eine Entfernung entsprechend der Hälfte der Zellengröße in einen Bereich mit 3 Zellen mal 3 Zellen von NoData verlängert.

  • Das Feld Typ in der Feature-Class der Ausgabekonturlinie kann folgende Werte aufweisen:

        1 for contours
        2 for indexed contours
        3 for explicit contours

  • Mit einem indizierten Konturlinienintervall können weitere Konturlinien erzeugt werden. Deren Typwert wird in der Ausgabe-Feature-Class als 2 codiert.

  • Eine Basiskonturlinie wird z. B. verwendet, wenn Sie Konturlinien alle 15 Meter beginnend bei 10 Metern erstellen möchten. Hierfür müssen Sie 10 als Basiskonturlinie und 15 als Konturlinienintervall wählen. Die Konturlinienwerte lauten dann 10, 25, 40, 55 usw.

  • Durch das Angeben einer Basiskonturlinie wird das Erstellen von Konturlinien über oder unter diesem Wert nicht verhindert.

  • Eine Textdatei mit Spezifikationen für Konturlinienwerte kann Folgendes enthalten:

    • Alle Zeilen, die nicht mit einem numerischen Wert beginnen, werden ignoriert und als Kommentar behandelt.
    • Eine Zeile mit einem Wert wird als expliziter Konturlinienwert behandelt.
    • Eine Zeile mit drei Werten wird als Basiskonturlinie, Konturlinienintervall und als indizierte Konturlinie behandelt.
    • Eine Zeile mit vier Werten wird als Von-, Bis-, Nach- und als indizierte Konturlinie behandelt.

    Wenn beispielsweise ein Raster einen Minimalwert von 102 und einen Maximalwert von 500 hat, dann erzeugt eine Textdatei mit:

        # contour values and ranges
        122.75
        485 500 5 12
        4 100 99

    Konturlinien bei:

        122.75
        104, 204, 304, 404
        103, 202, 301, 400, 499
        485, 490, 495, 500
        497

  • Befinden sich Zellenwerte des Rasters in einem Barrieren-Polygon-Feature, dann werden die Konturlinien an der Barriere geteilt. Sollen die Zellenwerte innerhalb des Polygon-Features ignoriert werden, ändern Sie diese Zellenwerte in NoData.

  • Wenn die Oberfläche des Eingabe-Rasters sehr groß ist oder wenn viele Ausgabe-Features angefordert werden, wird eine große Anzahl temporärer Dateien am Speicherort für temporäre Dateien des Betriebssystems erstellt. Sollten dadurch Probleme auftreten, führen Sie einen der folgenden Schritte aus:

    • Vergrößern Sie den verfügbaren Speicherplatz für temporäre Dateien auf der Festplatte.
    • Reduzieren Sie die Anzahl angegebener Konturlinien, oder teilen Sie den Konturlinienbereich auf, verarbeiten Sie jede Gruppe getrennt, und kombinieren Sie die Ergebnisse für die einzelnen Bereiche in einem Endergebnis.
    • Verarbeiten Sie die Eingabedaten in Abschnitten (Kacheln), und führen Sie die einzelnen Ergebnisse in einem Dataset zusammen.

Syntax

ContourWithBarriers(in_raster, out_contour_feature_class, {in_barrier_features}, {in_contour_type}, {in_contour_values_file}, {explicit_only}, {in_base_contour}, {in_contour_interval}, {in_indexed_contour_interval}, {in_contour_list}, {in_z_factor})
ParameterErklärungDatentyp
in_raster

Das Eingabe-Oberflächen-Raster.

Raster Layer; Raster Dataset; Mosaic Layer; Mosaic Dataset
out_contour_feature_class

Die Ausgabe-Konturlinien-Features.

Feature Class
in_barrier_features
(optional)

Die Eingabe-Barrieren-Features.

Die Features können vom Typ "Polylinie" oder "Polygon" sein.

Feature Layer
in_contour_type
(optional)

Der Typ der Konturlinie, die erstellt werden soll.

  • POLYLINES Die Konturlinien- oder Isolinienrepräsentation des Eingabe-Rasters.
  • POLYGONS Geschlossene Polygone, die die Konturlinien repräsentieren.
Hinweis:

Die aktuelle Version dieses Werkzeugs unterstützt nur Polylinienausgaben. Wenn die Option für Polygonausgaben verwendet wird, wird sie ignoriert, und eine Polylinienausgabe wird erstellt.

String
in_contour_values_file
(optional)

Die Basiskonturlinie, das Konturlinienintervall, das indizierte Konturlinienintervall und explizite Konturlinienwerte können ebenfalls über eine Textdatei angegeben werden.

File
explicit_only
(optional)

Nur explizite Konturlinienwerte werden verwendet. Die Basiskonturlinie, das Konturlinienintervall und das indizierte Konturlinienintervall werden nicht angegeben.

  • NO_EXPLICIT_VALUES_ONLY Der Standardwert des Konturlinienintervalls muss angegeben werden.
  • EXPLICIT_VALUES_ONLY Nur explizite Konturlinienwerte werden angegeben.
Boolean
in_base_contour
(optional)

Der Basiskonturlinienwert.

Konturlinien werden ober- und unterhalb dieses Wertes den Anforderungen entsprechend erstellt, um den gesamten Wertebereich des Eingabe-Rasters abzudecken. Die Standardeinstellung ist 0.

Double
in_contour_interval
(optional)

Das Intervall bzw. der Abstand zwischen Konturlinien.

Dies kann eine beliebige positive Zahl sein.

Double
in_indexed_contour_interval
(optional)

Für dieses Intervall werden auch Konturlinien erstellt und entsprechend in der Ausgabe-Feature-Class gekennzeichnet.

Double
in_contour_list
[in_explicit_contour,...]
(optional)

Explizite Werte, bei denen Konturlinien erstellt werden.

Double
in_z_factor
(optional)

Der Einheit-Konvertierungsfaktor, der beim Erstellen von Konturlinien verwendet wird. Der Standardwert ist 1.

Die Konturlinien werden basierend auf den Z-Werten im Eingabe-Raster erstellt, die oft in den Maßeinheiten Meter oder Fuß gemessen werden. Mit dem Standardwert 1 werden die Konturlinien in den gleichen Einheiten wie die Z-Werte im Eingabe-Raster angegeben. Um Konturlinien in einer anderen Einheit als derjenigen der Z-Werte zu erstellen, legen Sie den entsprechenden Wert für den Z-Faktor fest. Beachten Sie, dass für dieses Werkzeug die XY-Geländeeinheiten und die Z-Oberflächeneinheit nicht einheitlich sein müssen.

Wenn z. B. die Höhenwerte im Eingabe-Raster in Fuß angegeben sind, aber die Konturlinien basierend auf Metern erstellt werden sollen, setzen Sie den Z-Faktor auf 0,3048 fest (da 1 Fuß = 0,3048 Meter).

Double

Codebeispiel

ContourWithBarriers – Beispiel 1 (Python-Fenster)

In diesem Beispiel werden Konturen aus einem Esri Grid-Raster durch Integrieren eines Eingabe-Barrieren-Features erstellt. Außerdem werden die Basis- und Intervallparameter angegeben. Die Ausgabekonturen sind Polylinien in einem Shapefile.

import arcpy
from arcpy import env  
env.workspace = "C:/data"
arcpy.ContourWithBarriers_3d("elevation", "C:/output/outcwb.shp", 
                    "elevation_barrier.shp", "POLYLINES", "", "", 0, 300)
ContourWithBarriers – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel werden Konturen aus einem Esri Grid-Raster durch Integrieren eines Eingabe-Barrieren-Features erstellt. Außerdem werden die Basis- und Intervallparameter angegeben. Die Ausgabekonturen sind Polylinien in einem Shapefile.

# Name: ContourWithBarriers_3d_Ex_02.py
# Description: Creates contours from a raster surface.  The inclusion of 
#     barrier features will allow one to independently generate contours on
#     either side of a barrier.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

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

# Set local variables
inRaster = "elevation"
inBarrier = "elevation_barrier.shp"
inTextFile = ""
explicitValues = "NO_EXPLICIT_VALUES_ONLY"
contourInterval = 200
contourList = "600; 935; 1237.4"
baseContour = 0
outContours = "C:/output/outcwb.shp"

# Execute Contour
arcpy.ContourWithBarriers_3d(inRaster, outContours, inBarrier, "POLYLINES", 
                             inTextFile, explicitValues, baseContour, 
                             contourInterval, "", contourList, "")

Lizenzinformationen

  • Basic: Erfordert 3D Analyst oder Spatial Analyst
  • Standard: Erfordert 3D Analyst oder Spatial Analyst
  • Advanced: Erfordert 3D Analyst oder Spatial Analyst

Verwandte Themen