サマリー
2 つのサーフェス間の変位を計算し、1 つ目のサーフェスが 2 つ目のサーフェスの上にある、下にある、または同一であるエリアを特定します。
使用法
- 出力は、入力サーフェスの重なる部分だけを表します。
- 入力サーフェスと参照サーフェス間の Z 差分を評価したい場合は、出力ラスターまたは TIN の生成を検討してください。
- 2 つの入力サーフェスの水平座標系と鉛直座標系がそれぞれ同一である場合が最も効果的です。
出力フィーチャクラスには、入力サーフェスの領域が参照平面の上にあるか、下にあるか、同一であるかによって入力サーフェスの領域を分割するポリゴン フィーチャが含まれます。フィーチャの属性テーブルには、次のフィールドが含まれます。
- Volume - ポリゴンで囲まれた入力サーフェスと参照サーフェス間の空間の体積。2 つのサーフェスが同一であるエリアでは、体積は常に 0 になります。
- SArea - ポリゴンで囲まれた入力サーフェスのサーフェス エリア。
- Code - サーフェスと参照平面の空間リレーションシップを示す数値。-1 はサーフェスが参照平面の下にあること、0 はサーフェスが参照平面と同一であること、1 はサーフェスが参照平面の上にあることを示します。
構文
SurfaceDifference_3d (in_surface, in_reference_surface, out_feature_class, {pyramid_level_resolution}, {reference_pyramid_level_resolution}, {out_raster}, {raster_cell_size}, {out_tin_folder}, {out_tin_basename})
パラメーター | 説明 | データ タイプ |
in_surface | 参照サーフェスから相対変位が評価されるテレインまたは TIN サーフェス。 | Terrain Layer; TIN Layer |
in_reference_surface | 入力サーフェスの相対変位を特定するためのベースラインとして使用されるテレインまたは TIN サーフェス。 | Terrain Layer; TIN Layer |
out_feature_class | 同じ分類に属し、ポリゴンにグループ化された隣接する三角形および三角形パーツを含む出力フィーチャクラス。各リージョンの差分に囲まれる体積は、属性テーブルに示されます。 | Feature Class |
pyramid_level_resolution (オプション) | 入力サーフェスの生成に使用されるテレイン ピラミッド レベル。デフォルト値は 0 (最大解像度) です。このパラメーターは、テレイン データセットでのみ利用可能です。 | Double |
reference_pyramid_level_resolution (オプション) | 参照サーフェスの生成に使用されるテレイン ピラミッド レベル。デフォルト値は 0 (最大解像度) です。このパラメーターは、テレイン データセットでのみ利用可能です。 | Double |
out_raster (オプション) | 参照サーフェスに対して正規化された入力サーフェスを表す値を持つ、出力ラスター サーフェス。正の値は、入力サーフェスが参照サーフェスの上にあるエリアを表し、負の値は、入力サーフェスが参照サーフェスの下にあるエリアを表します。ラスターの値はリニア内挿法を使用して TIN から取得されます。 | Raster Dataset |
raster_cell_size (オプション) | 出力ラスターのセル サイズ。 | Double |
out_tin_folder (オプション) | 入力サーフェスと参照サーフェス間の差分を表す値を持つ、1 つ以上の TIN サーフェスを格納するためのフォルダーの場所。 | Folder |
out_tin_basename (オプション) | 各出力 TIN サーフェスのベース名。データを表すのに 1 つの TIN データセットでは不十分な場合、複数の TIN が同じベース名で作成されます。 | String |
コードのサンプル
SurfaceDifference (サーフェス差分) の例 1 (Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.SurfaceDifference_3d("sample.gdb/featuredataset/terrain", "sample.gdb/featuredataset/terrain2", "surface_diff.shp")
SurfaceDifference (サーフェス差分) の例 2 (スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: SurfaceDifference Example
Description: This script demonstrates how to use the
SurfaceDifference tool.
****************************************************************************'''
# 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"
# Set Local Variables
inSurface = "flood_tin"
inReference = "elev_tin"
# Ensure output name is unique
outPoly = arcpy.CreateUniqueName("difference.shp")
#Execute SurfaceDifference
arcpy.SurfaceDifference_3d(inSurface, inReference, outPoly)
del arcpy, inSurface, inReference, outPoly
環境
ライセンス情報
- ArcGIS Desktop Basic: 次のものが必要 3D Analyst
- ArcGIS Desktop Standard: 次のものが必要 3D Analyst
- ArcGIS Desktop Advanced: 次のものが必要 3D Analyst