|
インタフェース > コア インタフェース > objXRefMgr |
objXRefMgr コア インタフェースは、XRef Manager へのアクセスを提供し、MAXScript で外部参照を処理する場合に適しています。スクリプトには、このインタフェースのメソッドと XRefObject によって公開されるメソッドの両方を使用しないでください。objXrefMgr は、シーン内のすべてのオブジェクト外部参照の追加と変更を調整します。
3ds Max 8 以降 で使用可能です。
MAXScript で外部参照を扱う場合は、次の概念が役立ちます。
Interface: objXRefMgr
プロパティ:
objXRefMgr.includeAll : bool : Read|Write
[すべてを含む](Include All)チェックボックスの状態を取得/設定します。
既定は True です。
3ds Max 2016 以降で使用可能です。
objXRefMgr.enableUseLocalProxySettings : bool : Read|Write
True に設定すると、ローカルのプロキシ設定が使用されます。
既定値は False です。
3ds Max 2016 以降で使用可能です。
objXRefMgr.recordCount: DWORD : Read
オブジェクト外部参照レコードの数を返します。
objXRefMgr.dupObjNameAction : enum : Read|Write
dupObjNameAction enums: {#prompt|#xref|#skip|#deleteOld|#autoRename}
重複名が検出されたときに実行するアクションを取得/設定します。
objXRefMgr.dupMtlNameAction : enum : Read|Write
dupMtlNameAction enums: {#prompt|#useXRefed|#useScene|#autoRename}
重複マテリアル名が検出されたときに実行するアクションを取得/設定します。
objXRefMgr.mergeTransforms : bool : Read|Write
オブジェクト外部参照の変換コントローラを合成するかどうかの設定を取得/指定します。true に設定した場合、変換コントローラがマスター シーンに合成され、参照ファイルへのライブ接続が切断されます。既定値は false です。
objXRefMgr.mergeMaterials : bool : Read|Write
オブジェクト外部参照のマテリアルを合成するかどうかの設定を取得/指定します。true に設定した場合、参照オブジェクトのマテリアルがマスター シーンに合成され、参照ファイルへのライブ接続が切断されます。このオプションは、オブジェクト外部参照を作成する前に設定する必要があります。既定値は false です。
objXRefMgr.mergeManipulators : bool : Read|Write
オブジェクト外部参照のマニピュレータを合成するかどうかの設定を取得/指定します。true に設定した場合、参照オブジェクトのマニピュレータがマスター シーンに合成され、参照ファイルへのライブ接続が切断されます。このオプションは、オブジェクト外部参照を作成する前に設定する必要があります。既定値は false です。
objXRefMgr.mergeModifiers : enum : Read|Write
mergeModifiers enums: {#xrefModifiers|#ignoreModifiers|#mergeModifiers}
オブジェクト外部参照のモディファイヤの処理設定を取得/指定します。
#xrefModifiers オプションを指定した場合、モディファイヤは外部参照オブジェクトがマスター シーンに合成される前に外部参照オブジェクトに適用され、変更できません。
#ignoreModifiers オプションを指定した場合、参照ファイルからのモディファイヤは外部参照オブジェクトに適用されません。
#mergeModifiers オプションを指定した場合、参照ファイルからのモディファイヤはマスター シーンに合成され、操作することができますが、参照ファイルへのライブ接続は切断されます。
このオプションは、オブジェクト外部参照を作成する前に設定する必要があります。
objXRefMgr.getAutoUpdate : bool : Read|Write
参照ソース ファイルが保存されたときにオブジェクト外部参照を自動的に更新するかどうかの設定を取得/指定します。
メソッド:
<Interface>objXRefMgr.GetRecord <index>index
インデックス指定されたレコードを返します。インデックスは 1 と .recordCount の間です。
<Interface>objXRefMgr.FindRecord <DWORD>handle
ハンドルによってレコードを返します。
戻り値の詳細については、「IXrefRecordMixinInterface」を参照してください。
<bool>objXRefMgr.RemoveRecordFromScene <Interface>record record Validated by Validator function
指定されたレコードをシーンから削除します。
成功した場合は true を、失敗した場合は false を返します。
レコード引数の詳細については、「IXrefRecord MixinInterface」を参照してください。
<bool>objXRefMgr.MergeRecordIntoScene <Interface>record record Validated by Validator function
指定されたレコードをシーンにマージします。
成功した場合は true を、失敗した場合は false を返します。
レコード引数の詳細については、「IXrefRecord MixinInterface」を参照してください。
<bool>objXRefMgr.SetRecordSrcFile <Interface>xrefRecord <filename>fileName
指定されたレコードのソース ファイルを、指定されたファイル名に設定します。
成功した場合は true を、失敗した場合は false を返します。
レコード引数の詳細については、「IXrefRecord MixinInterface」を参照してください。
<bool>objXRefMgr.UpdateAllRecords()
シーンのすべてのレコードを更新します。成功した場合は true を、失敗した場合は false を返します。
<bool>objXRefMgr.SetXRefItemSrcName <&maxObject>xrefItem <string>itemName xrefItem is In parameter
参照で渡されたオブジェクトのソース項目名を、指定された文字列に設定します。
成功した場合は true を、失敗した場合は false を返します。
<bool>objXRefMgr.SetProxyItemSrcName <&maxObject>xrefItem <string>itemName proxyItem is In parameter
参照で渡されたオブジェクトのプロキシ名を、指定された文字列に設定します。
成功した場合は true を、失敗した場合は false を返します。
| 例 |
|---|
-- Illustrate the use of SetProxyItemSrcName, SetProxyItemSrcFile, and AddXrefItemsFromFile sphereFile = @"mySphereScene.max" teapotFile = @"myTeapotScene.max" -- Create a scene file containing a sphere, this will be the proxy object resetMaxFile #noPrompt s = sphere name:"mySphere" saveMaxFile sphereFile useNewFile:false -- create a scene file containing a teapot, this will be the xref object resetMaxFile #noPrompt -- add a teapot, we'll use the sphere as a proxy t = teapot name:"myTeapot" saveMaxFile teapotFile useNewFile:false -- create our xref and our proxy resetMaxFile #noPrompt xrefRecord = objXrefMgr.AddXrefItemsFromFile teapotFile promptObjNames:false \ xrefOptions:#(#mergeModifiers, #mergeControllers, #mergeManipulators, #mergeMaterials) xrefItem = xrefRecord.getItem 1 #XrefObjectType objXrefMgr.SetProxyItemSrcFile xrefItem @"mySphereScene.max" objXrefMgr.SetProxyItemSrcName xrefItem "mySphere" |
<bool>objXRefMgr.SetXRefItemSrcFile <&maxObject>xrefItem <filename>fileName xrefItem is In parameter
参照で渡されたオブジェクトのソース項目ファイル名を、指定されたファイル名文字列に設定します。
成功した場合は true を、失敗した場合は false を返します。
<bool>objXRefMgr.SetProxyItemSrcFile <&maxObject>xrefItem <filename>fileName proxyItem is In parameter
参照で渡されたオブジェクトのプロキシ項目ファイル名を、指定されたファイル名文字列に設定します。
成功した場合は true を、失敗した場合は false を返します。
<bool>objXRefMgr.AddXRefItemsToRecord <Interface>record promptObjNames:<bool>objNames:<string array> record Validated by Validator function promptObjNames default value: false objNames default value: #()
シーン内のオブジェクト名の配列に対する外部参照を指定されたレコードに追加します。
レコード引数の詳細については、「IXrefRecord MixinInterface」を参照してください。
<Interface>objXRefMgr.AddXRefItemsFromFile <filename>fileName promptObjNames:<bool> objNames:<string array> xrefOptions:<&enum array>
promptObjNames default value: false
objNames default value: #()
xrefOptions enums: {#asProxy|#xrefModifiers|#dropModifiers|#mergeModifiers|#mergeManipulators
|#selectNodes|#mergeControllers|#mergeMaterials|#xrefControllers|#localControllers}
xrefOptions default value: #()
xrefOptions is In parameter
指定したオブジェクトの指定したファイルからシーンに追加された外部参照を(IXRefItem オブジェクトとして)含む外部参照レコード オブジェクト(IXRefRecord)を返します。
レコード引数の詳細については、「IXrefRecord MixinInterface」を参照してください。
<bool>objXRefMgr.CanCombineRecords <Interface>firstRecord <Interface>secondRecord firstRecord Validated by Validator function secondRecord Validated by Validator function
2 つのレコードを組み合せることができる場合は true、組み合せることができない場合は false を返します。
レコード引数の詳細については、「IXrefRecord MixinInterface」を参照してください。
<Interface>objXRefMgr.CombineRecords <&Interface array>records records Validated by Validator function records is In parameter
インタフェースの参照配列として指定されたレコードを単一インタフェースに組み合せます。
レコード引数と戻り値の詳細については、「IXrefRecord MixinInterface」を参照してください。
<bool>objXRefMgr.RemoveXRefItemsFromScene <&maxObject array>xrefItems xrefItems is In parameter
指定された外部参照項目をシーンから削除します。
成功した場合は true を、失敗した場合は false を返します。
<bool>objXRefMgr.MergeXRefItemsIntoScene <&maxObject array>xrefItems xrefItems is In parameter
配列として指定された外部参照項目をシーンにマージします。
成功した場合は true を、失敗した場合は false を返します。
<void>objXRefMgr.ApplyXRefMaterialsToXRefObjects <&maxObject array>objectXRefItems objectXRefItems is In parameter
指定された外部参照オブジェクトに外部参照マテリアルを適用します。
<Interface>objXRefMgr.IsNodeXRefed <node>node
ノードが外部参照されている場合は IXRefItem MixinInterface を返します。
<void>objXRefMgr.ApplyXRefControllersToXRefObjects <&maxObject array>objectXRefItems objectXRefItems is In parameter
参照配列引数によって指定されたオブジェクト外部参照項目に外部参照コントローラを適用します。
<boolean>objXRefMgr.ResetXRefControllersPRSOffset <&maxObject array>xrefItems xrefItems is In parameter
参照配列引数によって指定されたオブジェクト外部参照項目の外部参照コントローラに位置/回転/スケール オフセットを適用します。
<boolean>objXRefMgr.CanResetXRefControllersPRSOffset <&maxObject>xrefItem xrefItem is In parameter
参照引数によって指定されたオブジェクト外部参照項目の外部参照コントローラに位置/回転/スケール オフセットを適用できる場合は true を返します。
Interface: IXRefRecord
プロパティ:
<IXRefRecord MixinInterface>.includeAll : bool : Read|Write
[すべてを含む](Include All)チェックボックスの状態を取得/設定します。true に設定すると、レコードのすべてのオブジェクトが組み込まれます。
<IXRefRecord MixinInterface>.autoUpdate : bool : Read|Write
[自動更新](Auto Update)チェックボックスの状態を取得/設定します。true に設定すると、外部参照ソースの変更内容がシーンで自動的に更新されます。
<IXRefRecord MixinInterface>.enabled : bool : Read|Write
[使用可能](Enable)チェックボックスの状態を取得/設定します。
<IXRefRecord MixinInterface>.uptodate : bool : Read|Write
レコードが最新であるかどうかを取得/設定します。
<IXRefRecord MixinInterface>.empty : bool : Read
レコードが空である場合は true、空でない場合は false が含まれます。
<IXRefRecord MixinInterface>.nested : bool : Read
レコードがネストされている場合は true、ネストされていない場合は false が含まれます。
<IXRefRecord MixinInterface>.unresolved : bool : Read
レコードが未解決である場合は true、未解決でない場合は false が含まれます。
<IXRefRecord MixinInterface>.srcFileName : filename : Read|Write
ソース ファイルのファイル名が含まれます。このプロパティは、3ds Max 9 以降で設定できます。3ds Max 9 よりも前のバージョンでは読み取り専用でした。
<IXRefRecord MixinInterface>.recordID : DWORD : Read
レコードの ID が含まれます。
<IXRefRecord MixinInterface>.handle : DWORD : Read
レコードのハンドルが含まれます。
<IXRefRecord MixinInterface>.xrefOptions : enum by value array : Read
xrefOptions enums: {#asProxy|#xrefModifiers|#dropModifiers|#mergeModifiers|#mergeManipulators|#selectNodes|#mergeMaterials}
外部参照オプションの配列が含まれます。
メソッド:
<DWORD><IXRefRecord MixinInterface>.ItemCount <&enum array>types
types enums: {#XRefObjectType|#XRefMaterialType|#XRefAtmospheric Type|#XRefAllType}
types is In parameter
参照配列引数で渡されたタイプに対応するレコードの項目数を返します。
<maxObject><IXRefRecord MixinInterface>.GetItem <index>index <enum>type
type enums: {#XRefObjectType|#XRefMaterialType|#XRefAtmosphericType}
指定された外部参照タイプになっている、インデックス指定された項目を返します。
<DWORD><IXRefRecord MixinInterface>.GetItems <&enum array>types <&maxObject array>xrefItems
types enums: {#XRefObjectType|#XRefMaterialType|#XRefAtmosphericType|#XRefAllType}
types is In and Out parameter
xrefItems is In and Out parameter
最初の引数の参照配列によって指定されたタイプになっているすべての項目を、2 番目の引数の参照配列に返します。
<DWORD><IXRefRecord MixinInterface>.GetChildRecords <&Interface array>children children is Out parameter
子レコードを参照配列に返します。配列の値のタイプについては、「IXrefRecord MixinInterface」を参照してください。
<DWORD><IXRefRecord MixinInterface>.GetParentRecords <&Interface array>parents parents is Out parameter
親レコードを参照配列に返します。配列の値のタイプについては、「IXrefRecord MixinInterface」を参照してください。
<DWORD><IXRefRecord MixinInterface>.GetRootRecords <&Interface array>roots roots is Out parameter
ルート レコードを参照配列に返します。配列の値のタイプについては、「IXrefRecord MixinInterface」を参照してください。
<bool><IXRefRecord MixinInterface>.CheckSrcFileChanged()
ソース ファイルが変更された場合は true、変更されていない場合は false を返します。
<bool><IXRefRecord MixinInterface>.Update()
外部参照レコードの更新を強制し、正常に終了した場合は true、正常に終了しなかった場合は false を返します。
Interface: IXRefItem
プロパティ:
<IXRefItem MixinInterface>.srcFileName : filename : Read|Write
ソース ファイルのファイル名が含まれます。
このプロパティは、3ds Max 9 より前のバージョンでは読み取り専用でした。
<IXRefItem MixinInterface>.srcItemName : string : Read|Write
ソース項目の名前が含まれます。
このプロパティは、3ds Max 9 より前のバージョンでは読み取り専用でした。
<IXRefItem MixinInterface>.xrefRecord : Interface : Read
外部参照レコードの IXRefRecord MixinInterface が含まれます。
<IXRefItem MixinInterface>.unresolved : bool : Read
外部参照が未解決である場合は true、未解決でない場合は false が含まれます。
<IXRefItem MixinInterface>.nested : bool : Read
外部参照がネストされている場合は true、ネストされていない場合は false が含まれます。
<IXRefItem MixinInterface>.retargetable : bool : Read
外部参照の再ターゲットが可能な場合は true が含まれ、それ以外の場合は false が含まれます。
メソッド:
<maxObject><IXRefItem MixinInterface>.GetSrcItemresolveNested:<bool> resolveNested default value: false
ソース項目を返します。オプションのキーワード resolveNested を true に指定した場合、ネストされている外部参照は解決されてソース項目が取得されます。このキーワードを指定しないか false に指定した場合、ネストされている外部参照は解決されません。
<DWORD><IXRefItem MixinInterface>.GetParentItems <&maxObject array>parentItems parentItems is Out parameter
親項目を参照配列引数に返します。
<DWORD><IXRefItem MixinInterface>.GetRootItems <&maxObject array>rootItems rootItems is Out parameter
ルート項目を参照配列引数に返します。
<DWORD><IXRefItem MixinInterface>.GetChildItems <&maxObject array>childItems childItems is Out parameter
子項目を参照配列引数に返します。
<void><IXRefItem MixinInterface>.GetNodes<&node array>xrefNodes xrefNodes is Out parameter
外部参照ノードを参照配列引数に返します。
Interface: IXRefProxy
プロパティ:
<IXRefProxy MixinInterface>.proxyFileName : filename : Read|Write
プロキシのファイル名を格納します。
このプロパティは、3ds Max 9 より前のバージョンでは読み取り専用でした。
<IXRefProxy MixinInterface>.proxyItemName : string : Read|Write
プロキシの項目名を格納します。
このプロパティは、3ds Max 9 より前のバージョンでは読み取り専用でした。
<IXRefProxy MixinInterface>.proxyRecord : Interface : Read
プロキシの IXRefRecord インタフェースを格納します。
<IXRefProxy MixinInterface>.displayProxy: bool : Read|Write
プロキシをビューポートに表示するかどうかを取得/設定します。
<IXRefProxy MixinInterface>.renderProxy : bool : Read|Write
プロキシをレンダリングするかどうかを取得/設定します。
Interface: IXRefObject
プロパティ:
<IXRefObject MixinInterface>.activeFileName : filename : Read
アクティブなファイル名を格納します。
<IXRefObject MixinInterface>.activeObjName: string : Read
アクティブなオブジェクト名を格納します。
<IXRefObjectMixinInterface>.activeRecord : Interface : Read
外部参照オブジェクトの IXRefRecord インタフェースを格納します。
メソッド:
<maxObject><IXRefObject MixinInterface>.GetSourceObject <bool>resolveNestedXRef modifiers:<&maxObject array> modifiers default value: #() modifiers is Out parameter
ソース オブジェクトを返します。1 番目の引数が true に設定されると、ネストされた外部参照が解決されます。オプションのモディファイヤ: 配列パラメータにオブジェクトのモディファイヤが入力されます。