Sweep : モディファイヤ

sweep - superclass: modifier; super-superclass:MAXWrapper - 18:0 - classID: #(636209254, 529015311)

スィープ モディファイヤは、カスタム断面を持ったメッシュにスプライン シェイプを変換する場合に使用でき、ビルトインおよびユーザ定義の両方の断面シェイプ オプションを提供します。

3ds Max 8 以降 で使用可能です。

コンストラクタ

Sweep ...

プロパティ

[断面タイプ](Section Type)ロールアウト

<sweep>.AssignCSType Integer default: 2 -- radiobtnIndex; AssignCustomSectionType   

[カスタム断面タイプ](Custom Section Type) > [モード] (mode)ラジオ ボタンの状態を取得/設定します。

有効な値は次のとおりです。

0 - [移動] (Move)

1 - コピー

2 - [インスタンス] (Instance) (既定値)

3 - [参照] (Reference)

<sweep>.CurrentBuiltInShape Integer default:1-- integer; Current_Built_In_Shape

ビルトイン断面のタイプを取得/設定します。

利用可能なシェイプはハードコードされませんが、ファイル \plugcfgtype\sweep.ini を編集し、最大 100 までカスタム シェイプ クラスを追加することによって、拡張することができます。

現在の事前定義された値は以下の通りです。

1 - [角度] (Angle)

2- [バー] (Bar)

3- [チャネル] (Channel)

4 - [円柱] (Cylinder)

5- [半円](Half Round)

6- [パイプ] (Pipe)

7- [四半円](Quarter Round)

8- [T 型] (Tee)

9- [チューブ] (Tube)

10- [ワイド フランジ](Wide Flange)

<sweep>.CustomShape Integer default:0--integer; Custom_Shape

[ビルトイン断面を使用](Use Built-In Section)および[カスタム断面を使用](Use Custom Section)のラジオ ボタンの状態を取得/設定します。

1 に設定した場合、カスタム断面がアクティブになります。

0 の場合、事前定義された断面がアクティブになります。

<sweep>.CustomShapeName UndefinedClass default: undefined -- string; Custom_Shape_Name;

[カスタム断面]オブジェクトの名前を含みます。カスタム断面がまだ選択されていない場合は undefined を含みます。

<sweep>.Shapes ArrayParameter default: #(undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, ...) -- maxObject array; SubAnim

これは 100 個の要素による配列で、断面のシェイプを格納するために使用されます。

最初の要素以外のすべての要素は読み込み専用です。

要素 2 ~ 100 を使用して、.CurrentBuiltInShape プロパティと[ビルトイン断面] (Built-In Section)ドロップダウン リストによりコントロールされるビルトイン タイプによって定義されたクラス インスタンスを記録します。

最初、要素 2 には、\plugcfg\sweep.ini ファイルの最初(既定値)の断面によって定義されたクラスのインスタンスが割り当てられます(既定値では角度)。リストから別の要素を選択するか、.CurrentBuiltInShape を 1 以外の値に設定すると、新しいシェイプ クラス インスタンスが作成され、配列の対応する .CurrentBuiltInShape +1 要素に記録されます。

カスタム シェイプとして利用できるようにするために、すべてのシェイプの新しいクラス インスタンスを配列の最初の要素に割り当てるには、 .CustomShape プロパティを 1 に設定します。

    theShape = circle radius:100--create a circle
    theMod = sweep()--create a sweep modifier
    addModifier theShape theMod--add the sweep to the circle
    --Assign an instance of class Helix to first element of the shapes array:
    theMod.shapes[1] = Helix()
    theMod.customShape = 1 --enable the use of the custom shape

スィープ パラメータ

<sweep>.MirrorXZPlane BooleanClass default: false -- boolean; Mirror_On_XZ_Plane

[XZ 平面でミラー](Mirror on XZ plane)オプションの状態を取得/設定します。

<sweep>.MirrorXYPlane BooleanClass default: false -- boolean; Mirror_On_XY_Plane

[XY 平面でミラー](Mirror on XYplane)オプションの状態を取得/設定します。

<sweep>.XOffset Float default: 0.0 -- animatable; float; X_Offset

[X オフセット] (XOffset)の値を取得/設定します。

断面の X 軸に沿ってパスからの断面のオフセットをコントロールします。

<sweep>.YOffset Float default: 0.0 -- animatable; float; Y_Offset

[Y オフセット] (YOffset)の値を取得/設定します。

断面の Y 軸に沿ってパスからの断面のオフセットをコントロールします。

<sweep>.Angle Float default: 0.0 -- animatable; angle;

[角度] (Angle)の値を取得/設定します。

パスの軸の周りのクロス シェイプの回転をコントロールします。

<sweep>.SmoothSection BooleanClass default: true -- boolean; Smooth_Section

[スムーズ断面](Smooth Section)オプションの状態を取得/設定します。

true に設定した場合、基本(パス)シェイプの単一セグメントに対して生成したすべての面に、同じスムージング グループを割り当てます。

<sweep>.SmoothPath BooleanClass default: true -- boolean; Smooth_Path

[スムーズ パス](Smooth Path)オプションの状態を取得/設定します。

true に設定した場合、すべての基本(パス)シェイプのセグメントに対する断面シェイプの単一セグメントに対して生成したすべての面に、同じスムージング グループを割り当てます。

<sweep>.PivotAlignment Integer default: -1 -- integer; Pivot_Alignment

[基点の位置合わせ](Pivot Alignment)オプションを取得/設定します。 9 つのチェックボタンのグループに対応しています。

有効な値は次のとおりです。

0 - [左上隅](Upper Left Corner)

1 - [左] (Left)

2 - [左下隅](Bottom Left Corner)

3 - [上] (Up)

4 - [中心] (Center)

5 - [下] (Bottom)

6 - [右上隅](Upper Right Corner)

7 - [右] (Right)

8 - [右下隅](Bottom Right Corner)

-1 または 8 より大きな値 - 既定値では位置合わせなし

<sweep>.Banking BooleanClass default: true -- boolean

[バンク] (Banking)オプションの状態を取得/設定します。

<sweep>.UnionIntersections BooleanClass default: false -- boolean; Union_Intersections

[交差を結合](Union Intersection)オプションの状態を取得/設定します。

<sweep>.GenerateMappingCoords BooleanClass default: false -- boolean; Generate_Mapping_Coords

[マッピング座標を生成](Gen.Mapping Coordinates)オプションの状態を取得/設定します。

true に設定した場合、通常のシェイプで[レンダリング可能なスプライン](Renderable Spline)オプションを使用した場合と同様に、U が断面の周りを周回し、V が基本スプラインに沿って動くマッピング座標が生成されます。

 <sweep>.RealWorldMapSize BooleanClass default: false -- boolean; Real_World_Map_Size

[実際のマップサイズ] (Real-World Map Size)オプションの状態を取得/設定します。

<sweep>.GenMatIDs BooleanClass default: true -- boolean; Generate_Material_IDs

[マテリアル ID を生成](Generate Material IDs)オプションの状態を取得/設定します。

<sweep>.UsePathIDs BooleanClass default: false -- boolean; Use_Path_IDs

[断面 ID を使用](UseSection IDs)オプションの状態を取得/設定します。

<sweep>.UseSectionIDs BooleanClass default: true -- boolean; Use_Shape_IDs

[パス ID を使用](Use Path IDs)オプションの状態を取得/設定します。

sweep インタフェース:

Interface: sweepInterface

メソッド:

<void>pickCustomSection()

[断面タイプ](Section Type)ロールアウトの[カスタム断面タイプ](Custom Section Types)コントロール領域にある[ピック] (Pick)ボタンを押した場合に対応しています。

<void>mergeCustomSection()

[断面タイプ]ロールアウトの[カスタム断面タイプ]コントロール領域にある[ファイルから合成]ボタンを押した場合に対応しています。

<void>extractCustomSection()

[断面タイプ]ロールアウトの[カスタム断面タイプ]コントロール領域にある[抽出]ボタンを押した場合に対応しています。

<void>alignPivot()

[断面タイプ]ロールアウトの[スウィープ パラメータ]コントロール領域にある[基点調整]ボタンを押した場合に対応しています。

[パラメータ]ロールアウトおよび[補間]ロールアウト

注:

スィープ モディファイヤでは、ビルトイン断面を提供するために、それぞれのシェイプ クラスのクラス インスタンスを作成し、.シェイプ配列にこれらのクラス インスタンスを保存します。

[パラメータ] (Parameters)ロールアウトおよび[補間] (Interpolation)ロールアウトに表示されるプロパティは、断面に対して生成されたクラス インスタンスの ParamBlock から取得されます。

ビルトイン断面に使用される、対応するシェイプ クラスは次のとおりです。

角度 - Angle: シェイプ

バー - Rectangle: シェイプ

チャネル - Channel: シェイプ

円柱 - Circle: シェイプ

半円 -HalfRound: シェイプ

パイプ -Pipe:シェイプ

四半円 - QuarterRound: シェイプ

T 型 -Tee: シェイプ

W矩形 -WalledRectangle : シェイプ

ワイド フランジ - WideFlange: シェイプ

断面オブジェクトには、スィープ モディファイヤの 4 番目のインデックスで指定された subAnim としてアクセスできます。

    theMod = sweep()
    --> sweep:Sweep
    theShape = Circle radius:100
    --> $Circle:Circle001 @ [0.000000,0.000000,0.000000]
    addModifier theShape theMod
    --> OK
    classof theMod[4].object
    --> Angle
    theMod[4].angle_width = 50--set any property available in Angle Shape...
    --> 50