概要
TIN、テレイン、または LAS データセット サーフェスから計測した傾斜方向を表すポリゴン フィーチャを作成します。
図
使用法
傾斜方向はサーフェスの横の向きを表し、度単位で計測されます。サーフェスの各ファセットには傾斜を基数または序数で表現した方向を表すコード値が割り当てられ、同じコードを持つ隣接した領域は 1 つのフィーチャにマージされます。デフォルトの分類スキームは、次のように定義されています。
コード 傾斜の方向 傾斜角の範囲 -1
フラット
傾斜なし
1
北
0° – 22.5°
2
北東
22.5° – 67.5°
3
東
67.5° – 112.5°
4
南東
112.5° – 157.5°
5
南
157.5° – 202.5°
6
南西
202.5° – 247.5°
7
西
247.5° – 292.5°
8
北西
292.5° – 337.5°
9
北
337.5° – 360°
カスタマイズしたクラス定義は、[クラス閾値テーブル] で示すことができます。テーブルには列が 2 つ必要で、最初の列は度単位の傾斜方向のブレーク ポイントを示し、2 つ目の列はコード値を定義します。次の例について考えてみます。
閾値 Aspect_Code 90.0
1
180.0
2
270.0
3
360.0
4
サポートされている表のフォーマットは、*.dbf、*.txt、またはジオデータベース テーブルのいずれかです。フィールドの名前は何でもかまいません。最初の列が常にクラス閾値に使用され、2 つ目の列が常に傾斜方向コードに使用されます。
構文
arcpy.ddd.SurfaceAspect(in_surface, out_feature_class, {class_breaks_table}, {aspect_field}, {pyramid_level_resolution})
パラメーター | 説明 | データ タイプ |
in_surface | 処理対象の TIN、テレイン、または LAS データセット サーフェス。 | LAS Dataset Layer; Terrain Layer; TIN Layer |
out_feature_class | このツールで生成されるフィーチャクラス。 | Feature Class |
class_breaks_table (オプション) | 出力フィーチャクラスの傾斜方向範囲を定義するのに使用する分類の閾値を含むテーブル。 | Table |
aspect_field (オプション) | 傾斜方向コードの値を格納するフィールド。 | String |
pyramid_level_resolution (オプション) | このツールが使用するテレイン ピラミッド レベルの Z 許容値またはウィンドウサイズの解像度。デフォルト値は 0 (最大解像度) です。 | Double |
コードのサンプル
SurfaceAspect (サーフェス傾斜方向) の例 1 (Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.SurfaceAspect_3d("sample.gdb/featuredataset/terrain", "sample.gdb/featuredataset/terrain_aspect")
SurfaceAspect (サーフェス傾斜方向) の例 2 (スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: SurfaceAspect Example
Description: This script demonstrates how to use the
SurfaceAspect and SurfaceSlope tools to generate a polygon
that contains the intersection of both
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
try:
# List all TINs in workspace
listTINs = arcpy.ListDatasets("","TIN")
# Determine whether the list contains any TINs
if len(listTINs) > 0:
for dataset in listTINs:
print dataset
# Set Local Variables
aspect = arcpy.CreateUniqueName("Aspect.shp")
slope = arcpy.CreateUniqueName("Slope.shp")
outFC = dataset + "_Aspect_Slope.shp"
#Execute SurfaceAspect
arcpy.SurfaceAspect_3d(dataset, aspect)
#Execute SurfaceSlope
arcpy.SurfaceSlope_3d(dataset, slope)
#Execute SurfaceSlope
print "Starting Intersect"
arcpy.Intersect_analysis(aspect + " #;" + slope + " #", outFC, "ALL")
print "Completed intersect for " + dataset
del aspect, slope, outFC
else:
print "There are no TINs in the " + env.workspace + " directory."
except:
# Returns any other error messages
print arcpy.GetMessages(2)
del arcpy, listTINs
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst