サマリー
建物ポリゴンの本質的な形状とサイズを維持しながら、その建物ポリゴンの境界またはフットプリントを単純化します。
図
使用法
[最小エリア] パラメーターは、単純化された建物に対してのみ適用されます。単純化プロセスの完了後に最小領域より小さいサイズに縮小された建物はすべて、出力フィーチャクラスから除去されます。
出力フィーチャクラスは、単純化ステータスを示す BLD_STATUS と呼ばれるフィールドを格納しています。BLD_STATUS の値は、次のとおりです。
- 1 = 1 つの建物が単純化されました。
- 2 = 1 つの建物がその最小境界範囲に単純化されました。
- 3 = 許容値の二乗より小さい 1 つの建物がその最小境界範囲に単純化されました。
- 5 = 建物は 1 つも単純化されませんでした。
[空間的な競合を確認] パラメーターを使用した場合、このツールは空間競合を検出し、SimBldFlag と呼ばれる新しいフィールドを出力に追加して、競合フラグを格納します。値 0 は「競合なし」を意味し、値 1 は「競合」を意味します。
編集セッション中は、このツールを実行できません。
入力 z 値は、環境設定で指定されている場合、保持可能です。出力頂点が入力フィーチャ頂点に一致する場合、z 値は出力頂点に転送されます。それ以外の場合、z 値は既存の z 値から、または内挿を介して導き出されます。
無効な (自己交差) ジオメトリが単純化プロセス中に作成されることがあります。このようなジオメトリは修復可能ですが、改良を加えることはできません。たとえば、自己交差するポリゴンは、複数パート ポリゴンになっても、自己交差の外観を維持します。
大きなデータセットを処理する場合は、メモリの制限を超えることがあります。このような場合、[カートグラフィック パーティション] 環境設定で関連するポリゴン フィーチャクラスを特定することにより、パーティション単位で入力データを処理することを検討します。パーティションの境界によって定義されたデータの一部が順次処理されます。結果のフィーチャクラスは、パーティション エッジにおいてシームレスで一致した形状になります。詳細については、「パーティションを使用した大きなデータセットのジェネラライズ」をご参照ください。
構文
SimplifyBuilding_cartography (in_features, out_feature_class, simplification_tolerance, {minimum_area}, {conflict_option})
パラメーター | 説明 | データ タイプ |
in_features | 単純化の対象となる建物ポリゴン。 | Feature Layer |
out_feature_class | 作成される出力フィーチャクラス。 | Feature Class |
simplification_tolerance | 建物の単純化の許容値を設定します。許容値には、0 (ゼロ) より大きい値を指定する必要があります。優先的に適用される単位を選択することができます。デフォルトはフィーチャ単位です。 | Linear Unit |
minimum_area (オプション) | 単純化された建物に対して、フィーチャ単位で保持される最小領域を設定します。デフォルト値は 0 であり、すべての建物が保持されます。単位は自由に指定できます。デフォルトはフィーチャの単位です。 | Areal Unit |
conflict_option (オプション) | 建物間に発生する可能性のある競合 (建物同士の重なり合いや接触) をチェックするかどうかを指定します。SimBldFlag と呼ばれるフィールドが出力に追加され、競合フラグが格納されます。値 0 は「競合なし」を意味し、値 1 は「競合」を意味します。
| Boolean |
コードのサンプル
SimplifyBuilding (建物ポリゴンの単純化) の例 1 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは、イミディエイト モードで SimplifyBuilding 関数を使用する方法を示しています。
import arcpy
import arcpy.cartography as CA
arcpy.env.workspace = "C:/data"
CA.SimplifyBuilding("buildings.shp", "C:/output/output.gdb/simplified_buildings", 10)
SimplifyBuilding (建物ポリゴンの単純化) の例 2 (スタンドアロン スクリプト)
次のスタンドアロン スクリプトで、SimplifyBuilding 関数を使用する方法を示します。
# Name: SimplifyBuilding_Example2.py
# Description: Aggregate building features and then simplify them
# Import system modules
import arcpy
import arcpy.cartography as CA
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Buildings"
# Set local variables
inBuildingFeatures = "houses"
aggregatedFeatures = "C:/data/PortlandOutput.gdb/residential_areas"
simplifiedFeatures = "C:/data/PortlandOutput.gdb/residential_simplified"
# Aggregate house polygons.
CA.AggregatePolygons(inBuildingFeatures, aggregatedFeatures, 10, 100, 100, "ORTHOGONAL")
# Simplify residential building polygons.
CA.SimplifyBuilding(aggregatedFeatures, simplifiedFeatures, 10, 100, "CHECK_CONFLICTS")
環境
ライセンス情報
- ArcGIS Desktop Basic: いいえ
- ArcGIS Desktop Standard: いいえ
- ArcGIS Desktop Advanced: はい