Disponible con una licencia de Spatial Analyst.
Resumen
Defines a list of point feature classes that represent the locations and magnitude of known topographic depressions and the fields identifying their elevation values.
Debate
This object is used in the tool Topo To Raster.
The Topo To Raster tool will not attempt to remove from the analysis any points explicitly identified as sinks. The field used should be one that stores the elevation of the legitimate sinks. If NONE is selected, only the location of the sink is used.
Sintaxis
TopoSink (inFeatures)
Parámetro | Explicación | Tipo de datos |
inFeatures [[inFeature, {field}],...] | The input point feature datasets. Optionally, you can supply the name of a field that stores the elevation values to use for the input points. The field used should be one that stores the elevation of the legitimate sink. If NONE is selected, only the location of the sink is used. | List |
Propiedades
Propiedad | Explicación | Tipo de datos |
inFeatures (Lectura y escritura) |
The input feature datasets and the fields to be used for the attributes. | List |
Ejemplo de código
TopoSink example 1 (Python window)
Demonstrates how to create a TopoSink class and use it in the TopoToRaster tool within the Python window.
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 example 2 (stand-alone script)
Interpolates a surface with TopoToRaster using the TopoSink class as one of the input parameters.
# 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")