描述
用于构造 3D 面或折线,以描绘沿栅格表面边界的高度。
插图
使用方法
此工具用于在栅格表面运行,且只能在单波段栅格或多波段栅格的特定波段上运行。输出要素可使用数据值捕获连续像元的边界,其 Z 值沿表面周长进行插值。可通过将栅格内最外侧像元的中心连接起来来定义周长。
如果栅格具有以 NoData 像元分隔的不连续数据像元,则输出几何将被放置到一个要素记录中,并且可能会由多部分要素组成。
注:
由于面的内部部分不会包含任何折点,所以 3D 面仅包含沿要素周长的高程值。在 3D 模式下使用区域填充绘制时,边界折点会随意连接到三角形中以进行渲染。除非该面是平面(斜平面或水平平面),否则该填充可能不太会准确表示内部表面。因此,建议不要使用填充符号绘制非平面 3D 面。
语法
arcpy.3d.RasterDomain(in_raster, out_feature_class, out_geometry_type)
参数 | 说明 | 数据类型 |
in_raster | 待处理的栅格。 | Raster Layer; Mosaic Layer |
out_feature_class | 将由此工具生成的要素类。 | Feature Class |
out_geometry_type | 输出要素类的几何。
| String |
代码示例
下面的示例演示了如何在 Python 窗口中使用此工具。
arcpy.env.workspace = "C:/data"
arcpy.RasterDomain_3d("dtm_grd", "raster_domain.shp", "POLYGON")
下面的示例演示了如何在独立 Python 脚本中使用此工具。
'''*********************************************************************
Name: RasterDomain Example
Description: This script demonstrates how to use the
Raster Domain tool to generate polygon footprints for all
*.img rasters in a given workspace.
**********************************************************************'''
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Create the list of IMG rasters
rasterList = arcpy.ListRasters("*", "IMG")
# Verify there are rasters in the list
if rasterList:
# Loop the process for each raster
for raster in rasterList:
# Set Local Variables
outGeom = "POLYGON" # output geometry type
# The [:-4] strips the .img from the raster name
outPoly = "domain_" + raster[:-4] + ".shp"
print("Creating footprint polygon for " + raster + ".")
#Execute RasterDomain
arcpy.RasterDomain_3d(raster, outPoly, outGeom)
print("Finished.")
else:
print("There are no IMG files in the " + env.workspace + " directory.")
许可信息
- Basic: 需要 3D Analyst
- Standard: 需要 3D Analyst
- Advanced: 需要 3D Analyst