概要
ラスター サーフェスの境界に沿って高さを表す 3D ポリゴンまたはポリラインを構築します。
図
使用法
このツールはラスター サーフェス上で操作するように設計されており、1 バンド ラスターまたはマルチバンド ラスターの特定のバンドに対してのみ機能します。出力フィーチャはデータ値を持つ連続セルの境界を取得し、Z 値がサーフェス境界の長さに沿って内挿されます。境界の長さは、ラスターの最も外側のセルの中心を接続することで定義します。
出力ジオメトリは 1 つのフィーチャ レコードに配置され、ラスターに NoData セルで分割された不連続データ セルがある場合はマルチパート フィーチャが生成されます。
メモ:
3D ポリゴンは、フィーチャの輪郭に沿った標高値のみを含みます。ポリゴンの内部には頂点が存在しません。3D を塗りつぶしで描画する場合、境界の頂点はレンダリング用の三角形に任意で接続されます。ポリゴンが平面 (傾斜または水平) でない場合、内側サーフェスの塗りつぶしは正しく描画されないことがほとんどです。このため、非平面ポリゴンは塗りつぶしシンボルを使用せずに描画することを推奨します。
構文
arcpy.3d.RasterDomain(in_raster, out_feature_class, out_geometry_type)
パラメーター | 説明 | データ タイプ |
in_raster | 処理対象のラスター。 | Raster Layer; Mosaic Layer |
out_feature_class | このツールで生成されるフィーチャクラス。 | Feature Class |
out_geometry_type | 出力フィーチャクラスのジオメトリ。
| String |
コードのサンプル
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
arcpy.env.workspace = "C:/data"
arcpy.RasterDomain_3d("dtm_grd", "raster_domain.shp", "POLYGON")
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''*********************************************************************
Name: RasterDomain Example
Description: This script demonstrates how to use the
Raster Domain tool to generate polygon footprints for all
*.img rasters in a given workspace.
**********************************************************************'''
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Create the list of IMG rasters
rasterList = arcpy.ListRasters("*", "IMG")
# Verify there are rasters in the list
if rasterList:
# Loop the process for each raster
for raster in rasterList:
# Set Local Variables
outGeom = "POLYGON" # output geometry type
# The [:-4] strips the .img from the raster name
outPoly = "domain_" + raster[:-4] + ".shp"
print("Creating footprint polygon for " + raster + ".")
#Execute RasterDomain
arcpy.RasterDomain_3d(raster, outPoly, outGeom)
print("Finished.")
else:
print("There are no IMG files in the " + env.workspace + " directory.")
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst