TopoSink (arcpy.sa)
Резюме
Задает список точечных классов пространственных объектов, представляющих положений и степень известных топографических понижений и поля, определяющие их рельефные значения.
Обсуждение
Этот объект используется в инструменте Топо в растр (Topo To Raster).
Инструмент Топо в Растр (Topo to Raster) не будет пытаться убрать из анализа точки, которые явно определены как локальные понижения. Параметр Поле (field) должен указывать поле, в котором хранятся высоты допустимых локальных понижений. Если выбрана опция NONE (НЕТ), используется только положение локального понижения.
Синтаксис
Параметр | Объяснение | Тип данных |
inFeatures [[inFeature, {field}],...] |
Входные наборы классов точечных объектов. Дополнительно вы можете указать имя поля, в котором содержатся значения высот для входных точек. Параметр Поле (field) должен указывать поле, в котором хранятся высоты допустимых локальных понижений. Если выбрана опция NONE (НЕТ), используется только положение локального понижения. | List |
Свойства
Свойство | Объяснение | Тип данных |
inFeatures (чтение и запись) |
Входные наборы классов объектов и поля, используемые для атрибутов. | List |
Пример кода
Иллюстрирует создание класса обрывов TopoSink и его применение в инструменте TopoToRaster в окне Python.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myTopoPtElev = TopoPointElevation([["spots.shp", "spot_meter"], ["spots2.shp", "elev"]])
myTopoContour = TopoContour([["contours.shp", "spot_meter"]])
myTopoBoundary = TopoBoundary(["boundary.shp"])
myTopoLake = TopoLake(["lakes.shp"])
myTopoSink = TopoSink([["sink1.shp", "elevation"], ["sink2.shp", "NONE"]])
myTopoStream = TopoStream(["streams.shp"])
myTopoCliff = TopoCliff(["cliff.shp"])
myTopoCoast = TopoCoast(["coast.shp"])
myTopoExclusion = TopoExclusion(["ignore.shp"])
outTopoToRaster1 = TopoToRaster([myTopoPtElev, myTopoContour, myTopoBoundary, myTopoLake, myTopoSink, myTopoStream, myTopoCliff, myTopoCoast, myTopoExclusion])
outTopoToRaster1.save("C:/sapyexamples/output/ttraster1")
Производится интерполяция поверхности инструментом TopoSink, одним из входных параметров которого является класс TopoCliff.
# Name: TopoBoundary_Ex_02.py
# Description: Execute TopoToRaster using all the supported objects.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Create all the supported Objects
myTopoPtElev = TopoPointElevation([["spots.shp", "spot_meter"], ["spots2.shp", "elev"]])
myTopoContour = TopoContour([["contours.shp", "spot_meter"]])
myTopoBoundary = TopoBoundary(["boundary.shp"])
myTopoLake = TopoLake(["lakes.shp"])
myTopoSink = TopoSink([["sink1.shp", "elevation"], ["sink2.shp", "NONE"]])
myTopoStream = TopoStream(["streams.shp"])
myTopoCliff = TopoCliff(["cliff.shp"])
myTopoCoast = TopoCoast(["coast.shp"])
myTopoExclusion = TopoExclusion(["ignore.shp"])
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute TopoToRaster
outTopoToRaster = TopoToRaster([myTopoPtElev, myTopoContour, myTopoBoundary, myTopoLake, myTopoSink, myTopoStream, myTopoCliff, myTopoCoast, myTopoExclusion])
# Save the output
outTopoToRaster.save("C:/sapyexamples/output/ttraster2")