マルチパッチ → COLLADA (Multipatch To COLLADA) (変換)

サマリー

1 つ以上のマルチパッチ フィーチャを出力フォルダー内の COLLADA ファイル (*.dae) および参照テクスチャ画像ファイルのコレクションに変換します。

使用法

  • COLLADA ファイルは、3D ジオメトリ上にドレープされたテクスチャとして機能する追加の画像ファイルを参照できる 3D オブジェクトの XML 表現です。 これは、マルチパッチ フィーチャを COLLADA にエクスポートすると、3D オブジェクトの XML 表現を含む *.dae ファイルおよびテクスチャを含む 1 つ以上の画像ファイル (たとえば、*.jpg ファイルや *.png ファイル) など、複数のファイルが作成されることを意味します。

  • このツールは、エクスポート対象のマルチパッチ フィーチャごとに 1 つの COLLADA 表現を作成します。 ツールは、各フィーチャのフィールド値 (デフォルトでは Object ID) を使用して出力ファイル名を定義します。 これにより、どのフィーチャがどの COLLADA ファイルにエクスポートされたか識別できるようになり、複数のフィーチャを同じディレクトリにエクスポートするときに一意の名前を定義するための手法が提供されます。 テクスチャ ファイルは、COLLADA ファイルと同じディレクトリに格納されます。 エクスポート ファイルの合計サイズを最小化するには、複数の COLLADA ファイル (繰り返しのレンガまたは窓のテクスチャなど) で使用されるテクスチャを一度だけエクスポートし、適用可能な *.dae ファイルで参照します。

  • このツールは、同じファイル名の既存の COLLADA ファイルを自動的に上書きします。 その場合には、エクスポート プロセス中に新しいファイルで上書きされたファイルを示す警告メッセージが表示されます。 出力場所が読み取り専用であるか、ディスクがいっぱいである場合など、エクスポートに失敗したフィーチャに対して、ジオプロセシング メッセージも生成されます。

  • エクスポートされたすべてのマルチパッチ フィーチャに新しい COLLADA ファイルが作成されるようにするには、格納先ディレクトリを空または新しいフォルダーに設定して、フィーチャごとに一意のファイル名フィールドを選択します。 属性値が同じ 2 つのフィーチャをエクスポートすると、エクスポートされた 2 つ目のフィーチャが 1 つ目の COLLADA ファイルを上書きします。

  • マルチパッチ フィーチャを COLLADA にエクスポートし、ArcGIS の外部で変更を行って繰り返し更新する場合は、毎回同じ場所にフィーチャをエクスポートします。 こうすることで、3D オブジェクトの最新の状態を表す、そのフィーチャの 1 つのファイルをディスクに保持できます。

  • エクスポートされたマルチパッチが投影座標系にある場合 (UTM ゾーンで保存された建物など)、座標を WGS84 として含む *.kml ファイルも出力フォルダーに作成されます。 このプロセスは測地基準系変換を使用しないため、KML を表示する際に位置の精度が低下する場合があります。

    ヒント:

    マルチパッチをレイヤーから変換するとき、ツールはレイヤーのレンダラーで定義された色を自動的に埋め込みます。 たとえば、レイヤーが用途タイプ属性 (商用は赤、住居用は青など) に基づくレンダリング フィーチャの場合、これらの色は出力 COLLADA ファイルに含められます。 表示される色はテクスチャ処理されたマルチパッチ フィーチャとテクスチャ処理されていないマルチパッチ フィーチャの両方に適用されます。テクスチャ処理されたマルチパッチ フィーチャはそのフィーチャの基になるテクスチャ ファイルに更新する必要があります。 単一の白の表示色を使用して、画像を変更せずにテクスチャ処理されたマルチパッチをエクスポートできます。

パラメーター

ラベル説明データ タイプ
入力マルチパッチ フィーチャ

エクスポート対象のマルチパッチ フィーチャ

Feature Layer
出力 COLLADA フォルダー

出力 COLLADA ファイルおよびテクスチャ画像ファイルの格納先となるフォルダー

Folder
ソース名の前に追加
(オプション)

出力 COLLADA ファイルの名前をソース フィーチャ レイヤーの名前の前に付加するかどうかを指定します。

  • オン - ファイル名がソース フィーチャ レイヤーの名前の前に付加されます。
  • オフ - ファイル名はソース フィーチャ レイヤーの名前の前に付加されません。 これがデフォルトです。

Boolean
フィールド名の使用
(オプション)

エクスポートされた各フィーチャの出力 COLLADA ファイル名として使用するフィーチャ属性。 フィールドを指定しない場合、フィーチャの Object ID が使用されます。

Field
COLLADA のバージョン

ファイルのエクスポート先の COLLADA のバージョンを指定します。

  • 1.5ファイルは COLLADA バージョン 1.5 にエクスポートされます。 バージョン 1.5 は、ジオリファレンス情報および強化されたレンダリング機能の組み込みをサポートします。 これがデフォルトです。
  • 1.4ファイルは COLLADA バージョン 1.4 にエクスポートされます。 バージョン 1.4 は多数の設計関連のアプリケーション プラットフォームで使用されている、広くサポートされた標準です。 バージョン 1.5 をサポートしていないシステム上で COLLADA ファイルを使用する場合は、このバージョンを選択してください。
String

arcpy.conversion.MultipatchToCollada(in_features, output_folder, {prepend_source}, {field_name}, collada_version)
名前説明データ タイプ
in_features

エクスポート対象のマルチパッチ フィーチャ

Feature Layer
output_folder

出力 COLLADA ファイルおよびテクスチャ画像ファイルの格納先となるフォルダー

Folder
prepend_source
(オプション)

出力 COLLADA ファイルの名前をソース フィーチャ レイヤーの名前の前に付加するかどうかを指定します。

  • PREPEND_SOURCE_NAMEファイル名がソース フィーチャ レイヤーの名前の前に付加されます。
  • PREPEND_NONEファイル名はソース フィーチャ レイヤーの名前の前に付加されません。 これがデフォルトです。
Boolean
field_name
(オプション)

エクスポートされた各フィーチャの出力 COLLADA ファイル名として使用するフィーチャ属性。 フィールドを指定しない場合、フィーチャの Object ID が使用されます。

Field
collada_version

ファイルのエクスポート先の COLLADA のバージョンを指定します。

  • 1.5ファイルは COLLADA バージョン 1.5 にエクスポートされます。 バージョン 1.5 は、ジオリファレンス情報および強化されたレンダリング機能の組み込みをサポートします。 これがデフォルトです。
  • 1.4ファイルは COLLADA バージョン 1.4 にエクスポートされます。 バージョン 1.4 は多数の設計関連のアプリケーション プラットフォームで使用されている、広くサポートされた標準です。 バージョン 1.5 をサポートしていないシステム上で COLLADA ファイルを使用する場合は、このバージョンを選択してください。
String

コードのサンプル

MultipatchToCollada の例 1 (Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.conversion.MultipatchToCollada("Sample.gdb/Buildings", "C:/COLLADA", 
                                     "PREPEND_SOURCE_NAME", "BldName")
MultipatchToCollada の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''*********************************************************************
Name: Convert Multipatch To Collada
Description: Converts multipatch features in an input workspace 
             to a Collada model.
*********************************************************************'''
# Import system modules
import arcpy

# Script variables
inWorkspace = arcpy.GetParameterAsText(0)

# Set environment settings
arcpy.env.workspace = inWorkspace
# Create list of feature classes in workspace
fcList = arcpy.ListFeatureClasses()

# Determine if the list contained any feature classes
if fcList:
    # Iterate through each feature class
    for fc in fcList:
        # Describe the feature class
        desc = arcpy.Describe(fc)
        # Determine if feature class is a multipatch
        if desc.shapeType is 'MultiPatch':
           # Ensure unique name for output folder
           outDir = arcpy.CreateUniqueName('collada_dir')
           # Specify that collada file is prefixed by source name
           prepend = 'PREPEND_SOURCE_NAME'
           # Specify the feature attribute used to name Collada files
           fldName = 'OID'
           # Run MultipatchToCollada
           arcpy.conversion.MultipatchToCollada(fc, outDir, prepend, fldName)
else:
    print('There are no feature classes in {0}.'.format(inWorkspace))

環境

このツールは、ジオプロセシング環境を使用しません。

関連トピック