概要
TIN (Triangulated Irregular Network) データセットのコピーを作成します。
使用法
このツールを使用して、後の編集で変更する TIN データセットの履歴コピーを保持することを検討します。
10.0 より前にリリースされたバージョンの ArcGIS 上で実行できる下位互換性のあるアプリケーションで使用するために、現在のバージョンの仕様を使用して作成された TIN が必要な場合、[10.0 以前] オプションがあるこのツールを使用することを検討してください。
下位互換性のある TIN データセットに機能拡張を適用したい場合は、[現在] オプションのあるこのツールを使用することを検討してください。 現在のバージョンの TIN では、バージョン 10 以前の同等のツールから、次の機能拡張をサポートしています。
- その他の空間参照情報
- 制限付きドローネ三角形分割。トライアンギュレータにより、三角形がブレークライン エッジに一致し、ブレークラインの圧縮が回避されるため、格納領域を浪費せずに済みます。
- ノードの取得元情報。ポイントが入力データから取得されたか、トライアンギュレータによって取り込まれたかを示します。
- エッジ タグ値の保持
構文
arcpy.3d.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.CopyTin_3d("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)
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst