Skip To Content

TopoSink

Available with Spatial Analyst license.

Summary

Defines a list of point feature classes that represent the locations and magnitude of known topographic depressions and the fields identifying their elevation values.

Discussion

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.

Syntax

 TopoSink (inFeatures)
ParameterExplanationData Type
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

Properties

PropertyExplanationData Type
inFeatures
(Read and Write)

The input feature datasets and the fields to be used for the attributes.

List

Code sample

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"])
# Execute TopoToRaster
outTopoToRaster = TopoToRaster([myTopoPtElev, myTopoContour, myTopoBoundary, myTopoLake, myTopoSink, myTopoStream])
# Save the output 
outTopoToRaster.save("C:/sapyexamples/output/ttraster2")

Related topics