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

ライセンス レベル:BasicStandardAdvanced

サマリ

1 つ以上のマルチパッチ フィーチャを出力フォルダ内の COLLADA ファイルと参照されているテクスチャ画像ファイルのコレクションに変換します。入力として、レイヤまたはフィーチャクラスのいずれかを指定できます。

使用法

構文

MultipatchToCollada_conversion (in_features, output_folder, {prepend_source}, {field_name})
パラメータ説明データ タイプ
in_features

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

Feature Layer
output_folder

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

Folder
prepend_source
(オプション)

出力 COLLADA ファイルのファイル名に接頭辞としてソース フィーチャ レイヤの名前を付加します。

  • PREPEND_SOURCE_NAMEファイル名に接頭辞を付けます。
  • PREPEND_NONEファイル名に接頭辞を付けません。これがデフォルトです。
Boolean
field_name
(オプション)

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

Field

コードのサンプル

MultipatchToCollada(マルチパッチ → Collada)の例 1(Python ウィンドウ)

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

import arcpy
from arcpy import env

env.workspace = "C:/data"
arcpy.MultipatchToCollada_conversion("Sample.gdb/Buildings", "C:/COLLADA", 
                                   "PREPEND_SOURCE_NAME", "BldName")
MultipatchToCollada(マルチパッチ → COLLADA)の例 2(スタンドアロン スクリプト)

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

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

# Script variables
inWorkspace = arcpy.GetParameterAsText(0)

try:
    # Set environment settings
    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'
               #Execute MultipatchToCollada
               arcpy.MultipatchToCollada(fc, outDir, prepend, fldName)
    else:
        print 'There are no feature classes in {0}.'.format(inWorkspace)
        
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)

環境

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

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: ○
ArcGIS for Desktop Standard: ○
ArcGIS for Desktop Advanced: ○
9/14/2013