インタフェース: SkinUtils

インタフェース > コア インタフェース > SkinUtils

 

   

コア インタフェース - クイック ナビゲーション

このインタフェースにより、3ds Max 6 以降で利用可能な、いくつかのスキン関連メソッドにアクセスできます。

   

メソッド:

<void>skinUtils.ExtractSkinData <node>node 	 

指定したノードからスキン データを抽出します。

   

<void>skinUtils.ImportSkinData <node>targetNode <node>sourceNode   

指定したソース ノードから指定したターゲット ノードにスキン データを転送します。

   

<matrix3 by value>skinUtils.GetBoneBindTM <node>skinNode <node>boneNode 

指定したソース ノードから指定したターゲット ノードにスキン データを転送します。

   

<void>skinUtils.SetBoneBindTM <node>skinNode <node>boneNode <matrix3 by value>tm 

指定したスキンとボーン ノードのボーン バインド変換を指定した matrix3 値に設定します。

   

<matrix3 by value>skinUtils.GetMeshBindTM <node>skinNode 

指定したスキン ノードのメッシュ バインド変換を matrix3 値で返します。

   

<void>skinUtils.SetMeshBindTM <node>skinNode <matrix3 by value>tm 

指定したスキン ノードのメッシュ バインド変換を指定した matrix3 値に設定します。

   

<matrix3 by value>skinUtils.GetBoneStretchTM <node>skinNode <node>boneNode 

指定したスキンとボーン ノードのボーン バインド変換を matrix3 値で返します。

   

<void>skinUtils.SetBoneStretchTM <node>skinNode <node>boneNode <matrix3 by value>tm 

指定したスキンとボーン ノードのボーン ストレッチ変換を指定した matrix3 値に設定します。

   

<void>skinUtils.GrowSelection <node>node 

既存の選択を拡大します。

   

<void>skinUtils.ShrinkSelection <node>node 

既存の選択を縮小します。

   

<void>skinUtils.LoopSelection <node>node 

既存の選択に基づいてループを選択します。

   

<void>skinUtils.RingSelection <node>node 

既存の選択に基づいてループを選択します。

次の macroScript は、上記のサポートされていない関数をアクション項目として実装します。これらのスクリプトを新しいスクリプトへコピーして、クアッドメニューを評価およびカスタマイズすれば、スキン選択の拡大、縮小、ループ、およびリングの関数に簡単にアクセスできます。

スクリプト:

macroScript GrowSkinSel category: "SkinUtils" 
( 
  on isVisible return
    selection.count == 1 and classof (modPanel.getCurrentObject()) == Skin 
  on execute do skinUtils.GrowSelection $
)
macroScript ShrinkSkinSel category:"SkinUtils" 
( 
  on isVisible return
    selection.count == 1 and classof (modPanel.getCurrentObject()) == Skin 
  on execute do skinUtils.ShrinkSelection $ 
)
macroScript LoopSkinSel category:"SkinUtils"
( 
  on isVisible return
    selection.count == 1 and classof (modPanel.getCurrentObject()) == Skin 
  on execute do skinUtils.LoopSelection $ 
)
macroScript RingSkinSel category:"SkinUtils"
(
  on isVisible return
    selection.count == 1 and classof (modPanel.getCurrentObject()) == Skin 
  on execute do skinUtils.RingSelection $
)

   

<void>skinUtils.ImportSkinDataNoDialog <boolean>matchByName <boolean>removeTargetPrefix <boolean>removeTargetSuffix <boolean>removeSourcePrefix <boolean>removeSourceSuffix <float>threshold <integer>interpolationType 

ダイアログ ボックスを表示せずにスキン データをインポートします。3ds Max 8 以降 で使用可能です。

UI のスキン ユーティリティ プラグインと同じように、ソース オブジェクトとターゲット オブジェクトを選択する必要があります。

matchByName パラメータを true に設定すると、ボーンは名前で突き合わされます(ダイアログ ボックスの[名前で一致](Match By Name)をクリックすることと同じ)。false に設定すると、ボーンはインデックスで突き合わされます。

引数 2 から 5 は、ダイアログ ボックスの[接頭語を除外](Remove Prefix)チェックボックスと[接尾語を除外](Remove Suffix)チェックボックスの状態に対応します。

しきい値引数は、ダイアログ ボックスの[しきい値](Threshold)の値に対応します。これは最近隣しきい値です。

最後の引数は、[補間タイプ](Interpolation Type)ドロップ ダウン リストの選択内容に対応します。有効な値は次のとおりです。

0 - 頂点で一致

1 - 面で一致

   

関連事項