PolyToolsPolyDraw : GlobalUtilityPlugin

3ds Max 2011 で導入されたこの GlobalUtilityPlugin は、グラファイト ポリ ドロウ ツールへのアクセスを提供するインタフェースです。

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

コンストラクタ:

Class instances not creatable by MAXScript

PolyToolsPolyDraw インタフェース:

Interface: PolyToolsPolyDraw

プロパティ:

PolyToolsPolyDraw.offset: float : Read|Write

描画対象のグリッド/サーフェスからの距離を定義するオフセット値を取得/設定します。

PolyToolsPolyDraw.MinDistance: float : Read|Write

描画中に生成される最小のポリゴンのサイズを定義する、最短距離の値を取得/設定します。

PolyToolsPolyDraw.DistanceType: integer : Read|Write

距離のタイプを取得/設定します。

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

0 - ピクセルで

1 - 単位で

PolyToolsPolyDraw.BranchTaper: float : Read|Write

描画されているときにブランチに適用されるテーパ効果の量を定義するブランチ テーパ値を取得/設定します。

負の値はブランチを細くし、正の値は太くします。値が 0.0 の場合、テーパをまったく生じません。

PolyToolsPolyDraw.TopoAutoWeld: boolean : Read|Write

true に設定すると、トポロジ ツールを使用した後に生成されたジオメトリが元のジオメトリに連結されます。

PolyToolsPolyDraw.SurfaceDoQuads: boolean : Read|Write

true に設定すると、.Surface() メソッドを呼び出し後にサーフェスをペインティングすると主に四角形を生成します。

メソッド:

PolyDraw メソッド

<boolean>PolyToolsPolyDraw.Drag ()

サーフェスまたはグリッド上のエレメント間の移動が可能になるドラッグ ツールをアクティブにします。

ドラッグ ツールの機能は、どのキーまたはキーの組み合わせを押すかによって変化します。

押されるキー 機能
キーを押さない クリックおよびドラックして頂点を移動します。
[Shift] クリックおよびドラックしてエッジを移動します。
[Ctrl] クリックおよびドラックしてポリゴンを移動します。
[Shift]+[Ctrl] クリックおよびドラックしてエッジ ループを移動します。
[Shift]+[Ctrl]+[Alt] クリックおよびドラックして要素を移動します。
<boolean>PolyToolsPolyDraw.StepBuild ()

[ステップ ビルド](Step Build)描画モードに入ります。

ステップ ビルド ツールの各種機能は以下のとおりです。どのキーまたはキーの組み合わせを押すかによって、ツールの機能が変化します。

押されるキー 機能
キーを押さない クリックして頂点をグリッドまたはサーフェス上に配置します
[Shift] [Shift]キーを押した状態で未接続の頂点をクリックしてドラッグし、四角形のポリゴンで頂点の間のギャップを塗り潰します。常に直近の 4 つの頂点からポリゴンが作成されます。
[Ctrl] クリックしてポリゴンを削除します。頂点は残るので、間違った場所に面を作成してしまった場合は、簡単に面を削除して任意の頂点の近くに再度描画できます。
[Alt] クリックして頂点を削除します。
[Ctrl]+[Alt] クリックしてエッジを削除します。
[Ctrl]+[Shift] クリックして頂点を配置して選択、または既存の頂点を選択します。4 つの頂点が選択されるとポリゴンが自動的に作成されます。最後に作成されたポリゴンから 2 つの最後の頂点が、新しい選択に含まれますので、ユーザは次のポリゴンを作成するのに 2 回クリックするだけで済みます。[Ctrl]キーと[Shift]キーを離すと、選択状態をクリアします。
[Shift]+[Alt] 押した状態のままドラッグして頂点を選択します。クリックして選択した頂点からポリゴンを作成します。この方法は 3 つまたは 5 つの側面を持つポリゴンを作成する場合に役立ちます。キーが離されると選択状態も自動的にクリアされます。
[Ctrl]+[Shift]+[Alt] クリックおよびドラックして、グリッド上またはサーフェス上で頂点を移動します。これらのキーを押してマウスを移動すると、どの頂点に対してツールがスナップしたか確認できます。
<boolean>PolyToolsPolyDraw.Extend ()

オブジェクトの開いたエッジ上での操作を可能にする縁取りツールをアクティブ化します。開いたエッジは、アタッチされているポリゴンを 1 つだけ持っているエッジです。

縁取りツールの各種機能は以下の通りです。

押されるキー 機能
キーを押さない クリックおよびドラッグして、端にある頂点からドラッグしてポリゴンを作成します。
[Shift] 端のエッジからドラッグしてポリゴンを作成します。
[Shift]+[Ctrl] クリックおよびドラックして 2 つのエッジ間のポリゴンを作成します。
[Ctrl] クリックしてポリゴンおよびその分離頂点を除去します。
[Shift]+[Ctrl]+[Alt] クリックおよびドラックして、グリッド上またはサーフェス上で頂点を移動します。

このツールを使用して画面スペース内のオブジェクトを編集することもできます。サブオブジェクトの要素は現在のビューに対して垂直方向に移動します。この方法を機能させるためにアクティブな座標系を変更する必要はありません。

押されるキー 機能
[Alt] クリックおよびドラックして、端にある頂点からドラッグして画面スペース内にポリゴンを作成します。
[Alt]+[Shift] 端のエッジからドラッグして画面スペース内にポリゴンを作成します。
[Alt]+[Ctrl] クリックおよびドラッグして画面スペース内の頂点を移動します。
<boolean>PolyToolsPolyDraw.Optimize ()

詳細を簡略化してすばやくメッシュを最適化する場合に有効的に使用できる Optimizer ツールをアクティブ化します。

Optimizer ツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない クリックおよびドラックして頂点を移動します。
[Shift]+[Ctrl] エッジ上でクリックして、その上にあるエッジ ループを削除します。
[Shift] ターゲット連結の頂点をクリックおよびドラッグして、最初の選択した頂点を次のドラッグされたものに集約します。単一のストローク内で複数の頂点を連結できます。
[Shift]+[Alt] エッジ上でクリックして、それが存在しているエッジ リング内のすべてのエッジを集約します。
[Alt] クリックして頂点を削除します。
[Ctrl]+[Alt] クリックしてエッジを削除します。
[Ctrl] クリックおよびドラッグして頂点間の接続をペイントします。
[Shift]+[Ctrl]+[Alt] クリックおよびドラックして、グリッド上またはサーフェス上で頂点を移動します。
<boolean>PolyToolsPolyDraw.Shapes ()

グリッドまたはサーフェス上にポリゴン シェイプをすばやく描画できるシェイプ ツールをアクティブ化します。

クリックとドラッグの操作を 1 回行った後の結果は、描画した通りの形状の単一ポリゴンになり、モデルまたはグリッド上に投影されます。このツールには、シェイプから編集可能メッシュを作成するための相補的なツール[SolveSurf]があります。これらの 2 つのツールを組み合わせることで、他のオブジェクトのサーフェス上に例としての詳細を作成することを容易かつ高速に行えます。SolveSurf の詳細については以下を参照してください。

シェイプ ツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない クリックおよびドラッグしてポリゴン シェイプを描画します。
[Ctrl] クリックしてポリゴンを削除します。
[Shift]+[Ctrl]+[Alt] クリックおよびドラッグしてポリゴンを移動します。
<boolean>PolyToolsPolyDraw.Splines ()

スプライン シェイプをジオメトリ サーフェスまたはグリッド上に描画できるスプライン ツールをアクティブ化します。これらのスプラインはレンダリング可能にするか、ロフティング操作に使用して簡単な詳細を作成できます。

スプライン ツールの機能は次の通りです。

押されるキー 機能
キーを押さない クリックおよびドラッグしてスプラインを描画します。
[Ctrl] クリックしてスプラインを削除します。
[Shift]+[Ctrl]+[Alt] クリックおよびドラックして最も近いスプラインを移動します。
注: 技術上の制限によりこのツールには元に戻す操作を行う機能がありません
<boolean>PolyToolsPolyDraw.Surface ()

サーフェス モードに入ります。グリッドまたはメッシュ サーフェス上でストリップやシェイプなどをドラッグしてジオメトリを作成できます。PolyToolsPolyDraw.SurfaceDoQuads プロパティが true に設定されると、ポリゴンは主に四角形になります。

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

<boolean>PolyToolsPolyDraw.Topology ()

トポロジ ツールをアクティブにします。

ラインが三角形または四角形のグリッドを形成することになるサーフェス上にラインを描画することができ、そのグリッドからメッシュが自動的に作成されます。

ユーザが右クリックしてツールからステップ アウトするとポリゴン メッシュは自動的にラインから作成されます。

PolyToolsPolyDraw.TopoAutoWeld プロパティが true に設定されると、作成されたメッシュが選択した編集可能なポリゴン オブジェクトにアタッチされ、境界で終了する頂点はまとめて連結されます。このように、選択したオブジェクトのサーフェスに追加し続けることができます。

PolyToolsPolyDraw.MinDistance プロパティで設定された距離によって、ラインの解像度が決まります。値が小さすぎる場合はポリゴンの作成においていくつかの面が欠落します。値が 10.0 で、単位のタイプをピクセルに設定すると、ほとんどの場合うまく機能します。

PolyTopo ツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない クリックおよびドラックして、サーフェスまたはグリッド上にラインを描画します。
[Shift] クリックおよびドラッグして、最も近い終点からラインを継続します。
[Ctrl] クリックしてラインを削除します。
マウスの右クリック ツールを終了してポリゴン メッシュを作成します。
<boolean>PolyToolsPolyDraw.Strips ()

マウスの動きに従ってストリップが向きを変えるようなポリゴンのストリップをペイントできるストリップ ツールをアクティブ化します。これにより、メッシュ オブジェクトのトポロジの基礎をすばやくレイアウトする場合に役立つ方法が得られます。

ストリップ ツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない クリックおよびドラッグしてポリゴン ストリップを描画します。
[Shift] クリックおよびドラッグして既存のエッジからペイントを開始します。その際、最も近いエッジが選択されます。
[Alt] ストリップの描画中に押して、閉じ部分をもう 1 つのエッジにドラッグすることで現在ペイントされているストリップが閉じるモードに入ります。ストリップのフロント エッジと閉じたエッジの間にポリゴンが作成されます。
<boolean>PolyToolsPolyDraw.Branch ()

オプションでテーパ機能を使用して「枝」を形成し、複数のセグメントで構成された押し出しをポリゴンからペイントできるブランチ ツールをアクティブ化します。押し出しはスクリーンに位置合わせされます。

PolyToolsPolyDraw.BranchTaper プロパティの値で、枝の最初のポリゴンと最後のポリゴンのサイズの違いを指定します。値 が -1.0 の場合、最終のポリゴンを可能な限り小さくします。PolyToolsPolyDraw.MinDistance プロパティでは、押し出しのセグメント間の距離を設定します。

ブランチ ツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない クリックおよびドラックして、マウスに最も近いポリゴンから押し出されたブランチを描画します。
[Shift] クリックおよびドラックして、選択したポリゴンから押し出されたブランチを描画します。
[Ctrl] クリックしてポリゴンを選択します。
[Ctrl]+[Alt] クリックして追加のポリゴンを選択/選択解除します。
<boolean>PolyToolsPolyDraw.EndTool ()

現在のツールを終了します。

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

モデリング ツール描画メソッド

<boolean>PolyToolsPolyDraw.SwiftLoop ()

エッジ上で選択した位置にエッジ ループを配置できるスイフト ループ ツールをアクティブ化します。エッジまたはエッジ ループを別の方法でスライドすることもできます。

このツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない エッジリング上のエッジ ループをクリックして挿入します。
[Shift] エッジリング上のエッジ ループをクリックして挿入し、新しいループを周囲のサーフェスのフローに合わせて調整します。
[Ctrl] クリックしてエッジ ループを選択します。また、自動的にエッジのサブオブジェクト レベルを入力します。
[Alt] 選択したエッジ ループ上の頂点をクリックおよびドラックして、ループが位置しているエッジ リング上のエッジ ループをスライドします。エッジに沿って初期頂点の側面へとマウスを移動します。
[Ctrl]+[Alt] [Alt]と同様な機能になりますが、[Ctrl]が押されることによって、ループのすべての頂点に対する側面への距離が初期頂点の距離と同じに設定されます。
[Ctrl]+[Shift] クリックしてエッジ ループを削除します。
注:

このツールでどの描画区域タイプが選択されているかは関係ありません。すべてのモードで同じように機能します。

<boolean>PolyToolsPolyDraw.PaintConnect ()

ペイント接続モードに入ります。

接続ツールを使用するとエッジおよび頂点の間の接続をペイントおよび編集できます。[フローを設定](Set Flow)チェックボックスが選択されている場合、作成されたエッジは自動的にメッシュのフローに合うように調整されます。このツールの機能は押すキーによって次のように異なります。

押されるキー 機能
キーを押さない クリックおよびドラックしてエッジ間の接続をペイントします。
[Shift] クリックおよびドラックしてエッジの中間地点でエッジ間の接続をペイントします。
[Ctrl] クリックおよびドラッグして頂点を選択して接続します。
[Alt] クリックして頂点を削除します。
[Ctrl]+[Alt] クリックしてエッジを削除します。
[Ctrl]+[Shift] クリックしてエッジ ループを削除します。
[Shift]+[Alt] クリックおよびドラックしてエッジ間の 2 つの接続をペイントします。
[Ctrl]+[Shift]+[Alt] クリックおよびドラックして、グリッド上またはサーフェス上で頂点を移動します。
注:

このツールは描画区域モードでの場合と同様に機能します。ただし、[Ctrl]+[Shift]+[Alt]キーの操作で頂点を動かした場合は例外です。