标注 | 说明 | 数据类型 |
输入线要素
| 要进行简化的线要素。 | Feature Layer |
输出线
| 简化的输出线要素。 | Feature Class |
简化容差
| 距输入线的 3D 距离阈值,简化输出必须位于其中。 | Linear Unit |
摘要
概化 3D 线要素,以减少总折点数,同时在指定容差范围内在水平和垂直方向上近似于原始形状。
使用情况
考虑使用此工具创建密集采样的 3D 线的简化表示,以采用较小显示比例优化绘制性能。原始线和生成的简化衍生物可应用可见比例范围,以确保针对给定比例绘制最适当的要素。
考虑使用此工具创建简化的隔断线,该隔断线可被添加到 terrain 数据集的较高金字塔等级以优化绘制性能。将隔断线添加到同一组中,以确保不会在相同的金字塔等级下强制使用这些隔断线。
由多个具有重合端点的要素组成的线不会在要素之间进行简化。考虑使用取消线分割工具来合并此类线,以在多个连接要素中进行简化。
该工具使用 Douglas-Peucker 算法来保留最能保留原始线形状的关键点。该算法首先将线的端点与趋势线连接起来,然后移除指定容差范围内的折点。如果有任何点超出容差范围,则使用距初始趋势线最远的点来创建两条趋势线,一条趋势线的起点为线的初始折点,另一条趋势线的起点为线的最终折点。将使用这两条新趋势线评估其他折点,以移除容差距离内的任何点。如果其他点仍在容差范围之外,则使用相同的方法对趋势线进行细分,直到生成捕获指定容差范围内所有源折点的趋势线。
参数
arcpy.ddd.Simplify3DLine(in_features, out_feature_class, tolerance)
名称 | 说明 | 数据类型 |
in_features | 要进行简化的线要素。 | Feature Layer |
out_feature_class | 简化的输出线要素。 | Feature Class |
tolerance | 距输入线的 3D 距离阈值,简化输出必须位于其中。 | Linear Unit |
代码示例
下面的示例演示了如何在 Python 窗口中使用此工具。
import arcpy
arcpy.env.workspace = 'C:/data'
arcpy.ddd.Simplify3DLine('rivers.shp', 'simplified_rivers.shp', '2 Meters')