ノード モディファイヤの変換コンテキスト メソッド

getModContextTM <node> <modifier>

モディファイヤ サブオブジェクト ギズモで使われたローカル座標に、モディファイヤのコンテキスト変換を提供する Matrix3 値を返します。

モディファイヤのサブオブジェクトの変換プロパティ(MAXScript のギズモや中心など)にアクセスすると、そのモディファイヤのコンテキスト変換に相対した値が生成されます。これは、トラック ビューで表示される変換プロパティの値と同じです。モディファイヤが面や頂点の選択などのサブオブジェクト選択で機能しない場合、またはモディファイヤをオブジェクトの選択にインタラクティブに適用した場合、このコンテキスト TM はオブジェクトのローカル座標空間になります。一方、モディファイヤがオブジェクト選択セットまたはサブオブジェクト選択で機能している場合、このコンテキスト変換により、その選択の位置と方向が与えられるため、getModContextTM() 関数を使って、そのサブオブジェクトのワールド空間変換プロパティを取得できます。

setModContextTM <node> <modifier> <matrix3>

特定のノード上の指定されたモディファイヤのモディファイヤ コンテキスト変換行列を設定します。

3ds Max 2008 以降 で使用可能です。従来、Avguard 機能拡張として提供されていた機能です。

getModContextBBoxMin <node> <modifier>
getModContextBBoxMax <node> <modifier>

これらの関数は getModContextTM() 関数を補完するもので、これを使ってモディファイヤ コンテキストのバウンディング ボックスのワールド空間座標を派生させることができます。たとえば、これを使ってサブ選択に作用するモディファイヤの境界や、FFD ラティスの境界を決定できます。FFD コントロール ポイントの位置をスクリプト記述する場合に、このことが特に役立ちます。これは、これらのコントロール ポイントが 0 対 1 のラティス空間に存在するためです。モディファイヤ コンテキストのバウンディング ボックスにより、このラティス空間のワールド空間境界が設定されることで、スケール処理したラティス空間座標をワールド座標から計算できるようになります。この関数は、バウンディング ボックスの最小範囲と最大範囲に対して Point3 値を返します。

setModContextBBox <node> <modifier> <point3 min> <point3 max>

特定のノード上のモディファイヤのモディファイヤ コンテキスト バウンディング ボックスを指定された最小値および最大値に設定します。

3ds Max 2008 以降 で使用可能です。従来、Avguard 機能拡張として提供されていた機能です。

上のメソッドの使用例については、「モディファイヤ サブオブジェクト変換プロパティ」を参照してください。