PolyToolsTopology : GlobalUtilityPlugin

3ds Max 2011 で導入された PolyToolsTopology GlobalUtilityPlugin は、グラファイト トポロジ ツールへの MAXScript アクセスを提供するインタフェースを公開します。

この機能は、MAXScript ツールとして正式にサポートされていない複数の機能を使用する3ds Max 2010 において初めて実装されました。このインタフェースはすべての関連プロパティおよびメソッドを統合しているため、MAXScript のユーザは独自のツールを使用してそれらを適用することが可能です。

コンストラクタ:

Class instances not creatable by MAXScript

PolyToolsTopology インタフェース:

Interface: PolyToolsTopology

メソッド:

<boolean>PolyToolsTopology.Wall ()

さまざまなサイズのレンガで、壁タイプのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Wall()

<boolean>PolyToolsTopology.Tiles1 ()

タイル タイプのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step2:
    PolyToolsTopology.Tiles1()

<boolean>PolyToolsTopology.Tiles2 ()

タイル タイプのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step2:
    PolyToolsTopology.Tiles2()

<boolean>PolyToolsTopology.Brick ()

レンガのようなトポロジを生成します。

ちょうど 1 つのエッジを選択する必要があります。選択したエッジの方向によって上方向が決まります。

この方法は、四角形のトポロジ内にあるエッジを選択した場合にのみ正常に機能します。

成功した場合は true を返します。上記の条件が満たされない場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Mosiac()

<boolean>PolyToolsTopology.Hive ()

ハチの巣のようなトポロジを生成します。

ちょうど 1 つのエッジを選択する必要があります。選択したエッジの方向によって上方向が決まります。

この方法は、四角形のトポロジ内にあるエッジを選択した場合にのみ正常に機能します。

成功した場合は true を返します。上記の条件が満たされない場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 2 --switch to Edge level
    PolyOp.SetEdgeSelection p #{61} --select one edge to define up direction
    --Step 2:
    PolyToolsTopology.Hive()

<boolean>PolyToolsTopology.Mosiac ()

さまざまなサイズのランダムなレンガで、モザイクのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step2:
    PolyToolsTopology.Mosiac()

<boolean>PolyToolsTopology.Floor1 ()

.EdgeDirection().Tiles1() を組み合わせたように動作します。最初にエッジ方向を交差する方向に変え、次にランダムなエッジを除去して異なるサイズのタイルを作成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Floor1()

<boolean>PolyToolsTopology.Floor2 ()

.EdgeDirection().Wall() を組み合わせたように動作します。最初にエッジ方向を交差する方向に変え、次にエッジを除去して異なるサイズのレンガを作成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Floor2()

<boolean>PolyToolsTopology.Skin ()

丸みを帯びたパッチで、スキン タイプのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Skin()

<boolean>PolyToolsTopology.Holer ()

トポロジに「穴」を生成します。また、このページの後半にある .Tatter() も参照してください。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Holer()

<boolean>PolyToolsTopology.EdgeDirection ()

トポロジの方向を交差方向に変更します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.EdgeDirection ()

<boolean>PolyToolsTopology.Simplify ()

ランダムな部分を削除し、エッジの特定の領域をそのまま保持することによって、トポロジを単純化します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Simplify ()

<boolean>PolyToolsTopology.Chaos ()

四角形のグリッドに適用すると、ランダムな形状のパッチで、カオスのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Chaos()

<boolean>PolyToolsTopology.Fours ()

四角形のグリッドに適用すると、ほぼ大きな四角形で構成されたタイル タイプのトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Fours()

<boolean>PolyToolsTopology.SmoothStar ()

四角形のグリッドに適用すると、ランダムでスムーズな星のトポロジを生成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.SmoothStar ()

<boolean>PolyToolsTopology.Cross ()

四角形のグリッドに適用すると、十字架のようなパターでトポロジを作成します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Cross()

<boolean>PolyToolsTopology.Planks1 ()

四角形のグリッドに適用すると、さまざまなサイズの「板」で、板タイプのトポロジを生成します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Planks1()

<boolean>PolyToolsTopology.Planks2 ()

四角形のグリッドに適用すると、.Planks1() メソッドよりも広い「板」でトポロジを作成します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Planks2()

<boolean>PolyToolsTopology.Planks3 ()

四角形のグリッドに適用すると、.Planks1() および .Planks2() メソッドに似たトポロジを生成しますが、交差する板を使います。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Planks3()

<boolean>PolyToolsTopology.Planks4 ()

四角形のグリッドに適用すると、前の 3 つのメソッドに似たトポロジを生成しますが、交差する板を使います。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Planks4()

<boolean>PolyToolsTopology.Tatter <integer>size <integer>iterations <integer>smooth

ポリゴンの行によって分離されたトポロジに「穴」を生成します。

1 つめの引数は生成される穴の全体的なサイズを決定します。

2 つめの引数は生成される穴のさまざまなサイズの数を決定します。

3 つめの引数は生成される穴の丸みを決定します。

成功した場合は true を、失敗した場合は false を返します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Tatter 1 1 1

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Tatter 2 1 1

    -- Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Tatter 3 1 1

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Tatter 1 2 1

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 4 --switch to Edge level
    --Step 2:
    PolyToolsTopology.Tatter 1 10 1

<boolean>PolyToolsTopology.ScrapVerts ()

2 つのみのエッジで共有されている頂点を削除します。

例:

    --Step 1:
    p = Plane widthsegs:10 lengthsegs:10 wirecolor:blue --create a plane
    convertTo p Editable_Poly --convert to EPoly
    select p --select the plane
    max modify mode --switch to modify panel
    subObjectLevel = 1 --switch to Edge level
    PolyOp.SetEdgeSelection p #{105} --select one central edge
    for i = 1 to 3 do p.GrowSelection selLevel:#edge --and grow the selection
    p.Remove selLevel:#Edge --then remove the selected edges
    PolyOp.SetEdgeSelection p #{5,8,11} --select a portion of a loop
    p.Remove selLevel:#Edge --and remove it, while leaving some stray vertices
    --Step 2:
    PolyToolsTopology.ScrapVerts ()