编辑 TIN (3D Analyst)

摘要

从一个或多个输入要素中加载数据以修改现有不规则三角网 (TIN) 的表面。

了解有关“编辑 TIN”工作原理的详细信息

插图

向 TIN 中添加隔断线

使用情况

  • 此工具用于修改输入 TIN。 如果想要保留源 TIN 的未修改版本,可考虑使用复制 TIN 工具维持备份。

  • 表面要素类型用于定义输入要素将如何构成表面三角化的定义。

    • 可将点要素指定为离散多点,而这些点所提供的数据结点的 z 值用于表面的三角测量。
    • 可将线要素指定为离散多点和隔断线,表示沿某一表面的位置,该表面的坡度线性不连续,如山脊线、海岸线、路面边缘、建筑物轮廓等。
    • 此外,也可将面要素,以及用于定义数据区的裁剪要素、通过常量 z 值定义区域的替换要素(例如水体)和表示不存在数据的内部区域的擦除要素指定为离散多点和隔断线。
  • 如果有足够的内存,该工具可以创建由数百万个点组成的 TIN。 但是,将 TIN 结点的数量限制在 600 万以下将确保响应迅速的显示性能和整体可用性。 TIN 表面越大,越适合使用多分辨率 terrain 数据集进行管理。 使用 LAS 格式的点云数据时,LAS 数据集可用于高效地渲染和处理 TIN 表面中的 LAS 点,该表面包含 TIN 数据集中同样支持的基于折线和面的表面约束。

参数

标注说明数据类型
输入 TIN

将处理的 TIN 数据集。

TIN Layer
输入要素类

将构成 TIN 定义的输入要素及其相关属性。

  • 输入要素 - 所包含的几何将要导入至 TIN 的要素。
  • 高度字段 - 输入要素的高程源。 可以使用输入要素属性表中的任何数值字段以及存储于 Shape 字段中的 Z 或 M 值。 选择 <None> 关键字将导致要素的高程通过周围表面进行插值处理。
  • 标签字段 - 将使用从输入要素属性表的整型字段中获得的值分配给 TIN 的数据元素的数值属性。
  • 类型 - 将定义 TIN 表面修整中要素的角色。 有关表面要素类型的详细信息,请参阅工具的使用提示。
  • 使用 Z - 指示将 SHAPE 字段表示为高度源时是否使用 Z 或 M 值。 将此选项设为 True 表示将使用 Z 值,而将其设为 False 将导致使用 M 值。
Value Table
约束型 Delaunay
(可选)

指定将与 TIN 隔断线一同使用的三角测量技术。

  • 未选中 - TIN 将使用符合 Delaunay 的三角测量,这可能会增密每条隔断线线段以生成多条三角形边。 这是默认设置。
  • 选中 - TIN 将使用约束型 Delaunay 三角测量,这会将各线段作为单独的边添加。 所有位置均支持 Delaunay 三角测量规则,但沿隔断线处除外,因为它无法增密。
Boolean

派生输出

标注说明数据类型
更新的 TIN

更新后的 TIN。

TIN Layer

arcpy.ddd.EditTin(in_tin, in_features, {constrained_delaunay})
名称说明数据类型
in_tin

将处理的 TIN 数据集。

TIN Layer
in_features
[[in_features, height_field, tag_value, SF_type, use_z],...]

将构成 TIN 定义的输入要素及其相关属性。

  • in_features - 所包含的几何将要导入至 TIN 的要素。
  • height_field - 输入要素的高程源。 可以使用输入要素属性表中的任何数值字段以及存储于 Shape 字段中的 Z 或 M 值。 选择 <None> 关键字将导致要素的高程通过周围表面进行插值处理。
  • tag_field - 将从输入要素属性表的整型字段中派生的数值属性,其值可用于将基本形式的属性分配给 TIN 的数据元素。 指定 <None>,将不会分配标签值。
  • sf_type - 将定义 TIN 表面中输入要素的角色。 有效选项取决于输入要素的几何。 可将点和多点要素定义为 Mass_Points,用于构成以 TIN 数据结点形式存储的高程值。 通过指定 Hard_LineSoft_Line 可将线要素指定为 Mass_Points 或隔断线。 通过指定 Hard_ClipSoft_Clip,面要素可表示插值边界;通过指定 Hard_EraseSoft_Erase,面要素可表示不包含数据的内部部分;通过指定 Hard_ReplaceSoft_Replace,面要素可表示高度恒定的区域。 此外,通过指定 Hardvalue_FillSoftvalue_Fill,面还可以用于分配整型属性值。
  • use_z - 指示将 SHAPE 字段指定为高度源时是否使用 Z 或 M 值。 将此选项设为 True 表示将使用 Z 值,而将其设为 False 将导致使用 M 值。
Value Table
constrained_delaunay
(可选)

指定将与 TIN 隔断线一同使用的三角测量技术。

  • DELAUNAYTIN 将使用符合 Delaunay 的三角测量,这可能增密每条隔断线线段以生成多条三角形边。 这是默认设置。
  • CONSTRAINED_DELAUNAYTIN 将使用约束型 Delaunay 三角测量,这会将各线段作为单独的边添加。 所有位置均支持 Delaunay 三角测量规则,但沿隔断线处除外,因为它无法增密。
Boolean

派生输出

名称说明数据类型
derived_out_tin

更新后的 TIN。

TIN Layer

代码示例

EditTin 示例 1(Python 窗口)

下面的示例演示了如何在 Python 窗口中使用此工具。

arcpy.env.workspace = "C:/data"
arcpy.ddd.EditTin("my_tin", "clip_polygon.shp <None> <None> hardclip false; "\
                 "new_points.shp Shape <None> masspoints true", "Delaunay")
EditTin 示例 2(独立脚本)

下面的示例演示了如何在独立 Python 脚本中使用此工具。

'''****************************************************************************
Name: EditTin Example
Description: This script demonstrates how to use the
             EditTin tool to add features to a output of the CopyTin tool.
****************************************************************************'''

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/LAS"

# Set Local Variables
origTin = "elevation"
copyTin = "elev_copy"
inFCs = [["Clip_Polygon.shp", "<None>", "<None>", "hardclip", False],
         ["new_points.shp", "Shape", "<None>", "masspoints", True]]

# Execute CopyTin
arcpy.ddd.CopyTin(origTin, copyTin, "CURRENT")

# Execute EditTin
arcpy.ddd.EditTin(copyTin, inFCs, Delaunay)

相关主题