标注 | 说明 | 数据类型 |
输入 TIN
| 将要复制的 TIN。 | TIN Layer |
输出 TIN | 将要生成的 TIN 数据集。 | TIN |
版本 (可选) | 输出 TIN 的版本。
| String |
摘要
创建不规则三角网 (TIN) 数据集的副本。
使用情况
可考虑使用此工具来维护将用于后续编辑修改的 TIN 数据集的存档副本。
如果使用当前版本规范创建的 TIN 需用于 10.0 之前发布的 ArcGIS 版本的向后兼容应用程序,可考虑使用此工具的 10.0 之前版本选项。
如果希望将此工具的增强功能应用到向后兼容的 TIN 数据集中,可考虑使用此工具的当前选项。当前 TIN 版本支持以下对应于 10 之前版本的增强功能:
- 附加空间参考信息
- 约束型 Delaunay 三角测量,通过使三角形与隔断线边保持一致,强制三角仪以避免隔断线增密来节省存储空间
- 结点源信息用于指示点是来自输入数据还是由三角仪引入的信息
- 边标签值的持久性
参数
arcpy.ddd.CopyTin(in_tin, out_tin, {version})
名称 | 说明 | 数据类型 |
in_tin | 将要复制的 TIN。 | TIN Layer |
out_tin | 将要生成的 TIN 数据集。 | TIN |
version (可选) | 输出 TIN 的版本。
| String |
代码示例
下面的示例演示了如何在 Python 窗口中使用此工具。
arcpy.env.workspace = "C:/data"
arcpy.ddd.CopyTin("elevation", "elevation_copy", "CURRENT")
下面的示例演示了如何在独立 Python 脚本中使用此工具。
'''****************************************************************************
Name: Define Data Boundary of LAS File
Description: This script demonstrates how to delineate data boundaries of
LAS files with irregularly clustered points. It is intended for
use as a script tool with one input LAS file.
****************************************************************************'''
# Import system modules
import arcpy
# Set local variables
inLas = arcpy.GetParameterAsText(0) # input LAS file
ptSpacing = arcpy.GetParameterAsText(1) # LAS point spacing
classCode = arcpy.GetParameterAsText(2) # List of integers
returnValue = arcpy.GetParameterAsText(3) # List of strings
outTin = arcpy.GetParameterAsText(4) # TIN created to delineate data area
outBoundary = arcpy.GetParameterAsText(5) # Polygon boundary file
try:
# Execute LASToMultipoint
lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory')
arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code,
"ANY_RETURNS", "", sr, inFormat, zfactor)
# Execute CreateTin
arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\
.format(lasMP), "Delaunay")
# Execute CopyTin
arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin))
# Execute DelineateTinDataArea
maxEdge = ptSpacing * 4
arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY")
# Execute TinDomain
arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON")
except arcpy.ExecuteError:
print(arcpy.GetMessages())
except Exception as err:
print(err)