摘要
将栅格像元中心转换为 3D 多点要素(其 Z 值反映栅格像元值)。
用法
如果拥有栅格高程数据并需要访问表面三角化提供的实用功能,请考虑使用此工具,因为多点要素可加载到 TIN 或 Terrain 数据集中。
当输入栅格的大小过大时,请考虑应用细化方法减少导出至多点要素类的像元数。
- 当保留垂直精度很重要时,使用 Z 容差细化方法。
- 当控制水平采样距离很重要时,使用核细化方法。
- 当生成的多点主要应用于可视化应用程序时,使用 VIP 细化方法。此方法相对较快,能够输出可预测点数,并且在选择局部山峰和凹地方面很有优势。然而,该方法对噪点敏感,可能会忽略跨越范围大于 3 像元 × 3 像元的地形要素。
- 使用 VIP 直方图作为应用 VIP 细化方法的初始步骤,它会生成显著性得分的直方图,便于您了解将选择的点数以及每个递增百分数值。
语法
RasterToMultipoint_3d (in_raster, out_feature_class, {out_vip_table}, {method}, {kernel_method}, {z_factor})
参数 | 说明 | 数据类型 |
in_raster | 待处理的栅格。 | Raster Layer |
out_feature_class | 将由此工具生成的要素类。 | Feature Class |
out_vip_table (可选) | 为方法参数指定 VIP 直方图时要生成的直方图表格。 | Table |
method (可选) | 应用于输入栅格的细化方法,用于选择要导出至多点要素类的像元的子集。
| String |
kernel_method (可选) | 对输入栅格应用核细化时在每个核邻域中使用的选择方法。
| String |
z_factor (可选) | Z 值将乘上的系数。此值通常用于转换 Z 线性单位来匹配 XY 线性单位。默认值为 1,此时高程值保持不变。 | Double |
代码实例
RasterToMultipoint 示例 1(Python 窗口)
下面的示例演示了如何在 Python 窗口中使用此工具。
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.RasterToMultipoint_3d("elevation.tif", "","elev_VIP.dbf", "VIP_HISTOGRAM", "", "1")
RasterToMultipoint 示例 2(独立脚本)
下面的示例演示了如何在独立 Python 脚本中使用此工具。
'''*********************************************************************
Name: RasterToMultipoint Example
Description: This script demonstrates how to use
the RasterToMultipoint tool to create multipoint datasets
fot all IMG rasters in a target workspace.
**********************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions
try:
arcpy.CheckOutExtension("3D")
# Set default workspace
env.workspace = "C:/data"
# Create the list of IMG rasters
rasterList = arcpy.ListRasters("*", "IMG")
# Loop the process for each raster
if rasterList:
for raster in rasterList:
# Set Local Variables
# [:-4] strips the last 4 characters (.img) from the raster name
outTbl = "VIP_" + raster[:-4] + ".dbf"
method = "VIP_HISTOGRAM"
zfactor = 1
#Execute RasterToMultipoint
arcpy.ddd.RasterToMultipoint(raster, "",outTbl, method, "", zfactor)
else:
"There are no IMG rasters in the " + env.workspace + " directory."
except Exception as e:
# Returns any other error messages
print e.message