TIN データ エリアの定義(Delineate TIN Data Area) (3D Analyst)
サマリ
三角形のエッジの長さに基づいて TIN のデータ エリア(または内挿ゾーン)を再定義します。
[TIN データ エリアの定義(Delineate TIN Data Area)](3D Analyst)の仕組みに関する詳細
図
使用法
-
このツールは入力 TIN を変更します。入力を変更したくない場合は、このツールを使用する前に、[TIN のコピー(Copy TIN)] ツールを使用して複製を作成してください。
-
[最大エッジの長さ] の値は、有効なデータ ゾーンと考えられるエリア内にある TIN の平均ノード間隔から決定するのが最善です。平均間隔より大きな値を指定します。
構文
DelineateTinDataArea_3d (in_tin, max_edge_length, {method})
パラメータ | 説明 | データ タイプ |
in_tin |
The input TIN. | TIN Layer |
max_edge_length |
少なくとも 1 辺が <max_edge_length> を超える三角形は NODATA としてマスクされます。このような三角形はマップに描画されず、内挿のようなサーフェス解析でも使用されません。長さは 2D 距離です。 | Double |
method (オプション) |
TIN のデータ エリアを定義する方法
| String |
コードのサンプル
DelineateTINDataArea(TIN データ エリアの定義)の例 1(Python ウィンドウ)
The following sample demonstrates the use of this tool in the Python window:
import arcpy from arcpy import env arcpy.CheckOutExtension("3D") env.workspace = "C:/data" arcpy.DelineateTinDataArea_3d("elevation", 10, "PERIMETER_ONLY")
DelineateTINDataArea(TIN データ エリアの定義)の例 2(スタンドアロン スクリプト)
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''**************************************************************************** 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 import exceptions, sys, traceback # 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: arcpy.CheckOutExtension("3D") # Execute LASToMultipoint arcpy.AddMessage("Creating multipoint features from LAS...") lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory') arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code, "ANY_RETURNS", "", sr, inFormat, zfactor) # Execute CreateTin arcpy.AddMessage("Creating TIN dataset...") arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\ .format(lasMP), "Delaunay") # Execute CopyTin arcpy.AddMessage("Copying TIN to delineate data boundary...") arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin)) # Execute DelineateTinDataArea arcpy.AddMessage("Delineating TIN boundary...") maxEdge = ptSpacing * 4 arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY") # Execute TinDomain arcpy.AddMessage("Exporting data area to polygon boundary...") arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON") arcpy.AddMessage("Finished") arcpy.CheckInExtension("3D") except arcpy.ExecuteError: print arcpy.GetMessages() except: # Get the traceback object tb = sys.exc_info()[2] tbinfo = traceback.format_tb(tb)[0] # Concatenate error information into message string pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\ .format(tbinfo, str(sys.exc_info()[1])) msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2)) # Return python error messages for script tool or Python Window arcpy.AddError(pymsg) arcpy.AddError(msgs)
関連項目
ライセンス情報
ArcView: 必須 3D Analyst
ArcEditor: 必須 3D Analyst
ArcInfo: 必須 3D Analyst
7/10/2012