ユニオン 3D(Union 3D) (3D Analyst)

サマリ

重なっているマルチパッチでパッチのジオメトリック交点を計算し、これらのマルチパッチを集約します。出力として作成されるフィーチャの数は、ツールの設定によって決まります。

[ユニオン 3D(Union 3D)](3D Analyst)の機能の詳細

使用法

構文

Union3D_3d (in_feature_class, {group_field}, out_feature_class, {out_table}, {disable_optimization}, {output_all})
パラメータ説明データ タイプ
in_feature_class

インターセクトおよび集約する閉じたマルチパッチ フィーチャ。

Features
group_field
(オプション)

集約する入力マルチパッチ フィーチャのグループ化に使用するフィールド。

Field
out_feature_class

集約したマルチパッチを格納するマルチパッチ フィーチャクラス。

Feature Class
out_table
(オプション)

入力フィーチャと、これらを集約した結果の出力フィーチャを表す、多対 1 のテーブル。

Table
disable_optimization
(オプション)

重なるマルチパッチ フィーチャを自動的に判断する最適化を無効にし、重なっているフィーチャだけを結合します。

  • DISABLED入力データの最適化を実行しません。フィーチャはそれぞれのグループ フィールドに従って結合されるか、すべてのフィーチャが単一の出力フィーチャに結合されます。これがデフォルトです。
  • ENABLED入力データの最適化を実行します。パフォーマンスを向上させるために、ツールは前処理を行って重なるフィーチャを検出してこれらをグループ化し、重なっているフィーチャごとに一意の出力を作成します。
Boolean
output_all
(オプション)

このオプションは、すべての入力フィーチャを強制的に出力フィーチャとして書き出します。重なっていないフィーチャは、変更されずにそのまま出力に書き出されます。重なっているフィーチャは、結合されてから出力に書き出されます。

  • DISABLED結合された入力フィーチャだけを出力として書き出します。
  • ENABLEDすべての入力フィーチャを出力として書き出します。
Boolean

コードのサンプル

Union 3D(ユニオン 3D)の例 1(Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで Union 3D(ユニオン 3D)関数を使用する方法を示しています。

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.Union3D_3d('multipatch.shp', 'union_output.shp', 'GROUP_FIELD', 
                'DISABLE', 'ENABLE', 'UnionTable.dbf')
Union 3D(ユニオン 3D)の例 2(スタンドアロン スクリプト)

次の Python スクリプトは、スタンドアロン スクリプトで Union 3D(ユニオン 3D)関数を使用する方法を示しています。

'''****************************************************************************
Name: Union3D Example
Description: This script demonstrates how to use the 
             Union3D tool.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    arcpy.CheckOutExtension('3D')
    # Set environment settings
    env.workspace = 'C:/data'
    # Set Local Variables
    inMP = "multipatch.shp"
    # Ensure output multipatch has a unique name
    outMP = arcpy.CreateUniqueName("union_output.shp")
    outTbl = arcpy.CreateUniqueName("UnionTable.dbf")
    GroupField = "Type"
    optimize = "DISABLE"
    solids = "ENABLE"
    #Execute Union3D
    arcpy.ddd.Union3D(inMP, outMP, GroupField, optimize, solids, outTbl)
    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