ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.

概要

polyReduce([caching=boolean], [cachingReduce=boolean], [colorWeights=float], [compactness=float], [constructionHistory=boolean], [geomWeights=float], [invertVertexWeights=boolean], [keepBorder=boolean], [keepBorderWeight=float], [keepColorBorder=boolean], [keepColorBorderWeight=float], [keepCreaseEdge=boolean], [keepCreaseEdgeWeight=float], [keepFaceGroupBorder=boolean], [keepFaceGroupBorderWeight=float], [keepHardEdge=boolean], [keepHardEdgeWeight=float], [keepMapBorder=boolean], [keepMapBorderWeight=float], [keepOriginalVertices=boolean], [keepQuadsWeight=float], [name=string], [nodeState=int], [percentage=float], [preserveLocation=boolean], [preserveTopology=boolean], [replaceOriginal=boolean], [sharpness=float], [symmetryPlaneW=float], [symmetryPlaneX=float], [symmetryPlaneY=float], [symmetryPlaneZ=float], [symmetryTolerance=float], [termination=int], [triangleCount=int], [triangulate=boolean], [useVirtualSymmetry=int], [uvWeights=float], [version=int], [vertexCount=int], [vertexMapName=string], [vertexWeightCoefficient=float], [weightCoefficient=float])

注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。

polyReduce は、取り消し可能、照会可能、および編集可能です。

メッシュの全体的な形状を保持しながら、ジオメトリを削減することによりポリゴン オブジェクトを簡略化します。

polyReduce のアルゴリズムは Softimage から派生した新しいアルゴリズムを使用するように 2014 で変更されました。ただし、コマンドは下位互換性を保つためにまだ従来のアルゴリズムを既定で使用します。新しいアルゴリズムの方がジオメトリ機能の保持に優れているので、バージョン フラグを 1 に設定することをお勧めします。また、一部のフラグは特定のアルゴリズムにのみ適用され、これについては各フラグで説明されています。

戻り値

stringノード名

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

関連

polyCloseBorder, polyCollapseEdge, polyCollapseFacet, polyDelEdge, polyDelFacet, polyDelVertex, polyMergeEdge, polyMergeFacet, polyMergeVertex, polyQuad, polySewEdge

フラグ

caching, cachingReduce, colorWeights, compactness, constructionHistory, geomWeights, invertVertexWeights, keepBorder, keepBorderWeight, keepColorBorder, keepColorBorderWeight, keepCreaseEdge, keepCreaseEdgeWeight, keepFaceGroupBorder, keepFaceGroupBorderWeight, keepHardEdge, keepHardEdgeWeight, keepMapBorder, keepMapBorderWeight, keepOriginalVertices, keepQuadsWeight, name, nodeState, percentage, preserveLocation, preserveTopology, replaceOriginal, sharpness, symmetryPlaneW, symmetryPlaneX, symmetryPlaneY, symmetryPlaneZ, symmetryTolerance, termination, triangleCount, triangulate, useVirtualSymmetry, uvWeights, version, vertexCount, vertexMapName, vertexWeightCoefficient, weightCoefficient
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
Common poly modifier operation flags
caching(cch) boolean createqueryedit
すべてのアトリビュートのキャッシングを切り替えることで、再計算を不要にします。
cachingReduce(cr) boolean createqueryedit
メモリを使用して速度を上げるために、削減の中間状態をキャッシュします。新しいアルゴリズムを使用するときは、キャッシュを有効にすることをお勧めします(-version 1)。ただし、古いアルゴリズムを使用するときは、安定性の問題が発生する可能性があるので、キャッシュを使用しないことをお勧めします。
C: 既定は false です。
Q: 照会すると boolean を返します。
colorWeights(cwt) float createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。削減アルゴリズムで頂点のカラーをどの程度考慮するかを示します。ウェイトが大きいほど、削減で頂点のカラーを保持しようとする傾向が強くなります。
C: 既定は 0 です。
Q: 照会すると float を返します。
compactness(com) float createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。生成される三角形のコンパクトさの許容値です。値 0 は、デシメーションの間にすべての三角形を受け入れます。0 に近い値は、同一直線上にエッジのある三角形の除去を試みます(ゼロ領域の三角形)。1 に近い値は、厳密に(同じ長さの)等辺ではない三角形の除去を試みます。1.0 に近いほど、計算量が増えます。
Q: 照会すると、float を返します。
constructionHistory(ch) boolean createquery
コンストラクション ヒストリをオンまたはオフにします(適切な場合)。コンストラクション ヒストリがオンの場合、対応するノードがメッシュのヒストリ チェーンに挿入されます。コンストラクション ヒストリがオフの場合、操作オブジェクト上に直接行われます。
注: コンストラクション ヒストリがすでにオブジェクトにある場合は、このフラグは無視され、ノードは必ずヒストリ チェーンに挿入されます。
geomWeights(gwt) float createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。削減アルゴリズムで頂点の位置をどの程度配慮するかを示します。ウェイトが大きいほど、削減ではジオメトリを保持しようとする傾向が強くなります。
C: 既定は 1 です。
Q: 照会すると float を返します。
invertVertexWeights(iwt) boolean createqueryedit
このフラグは、ウェイト マップ値の解釈方法を制御します。true の場合、頂点ウェイト 1.0 は頂点が削減されない可能性があることを意味します。false の場合、頂点ウェイト 0.0 は頂点が削減されない可能性があることを意味します。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は true です。
Q: 照会すると boolean を返します。
keepBorder(kb) boolean createqueryedit
true の場合、削減時にジオメトリ境界および選択領域の境界の保持を試みます。
C: 既定は true です。
Q: 照会すると boolean を返します。
keepBorderWeight(kbw) float createqueryedit
keepBorder がオンの場合、このフラグは境界線に割り当てるウェイトを指定します。この値を 0 に設定すると境界の保持が無効になり、1 に設定すると、隣接するメッシュのマッチングに役に立つすべての境界頂点が厳密に保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0.5 です。
Q: 照会すると float を返します。
keepColorBorder(kcb) boolean createqueryedit
true の場合、削減時にカラー境界の保持を試みます。これらはカラー ID に従って決定されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は true です。
Q: 照会すると boolean を返します。
keepColorBorderWeight(kcw) float createqueryedit
keepColorBorder がオンの場合、このフラグはカラー境界に割り当てるウェイトを指定します。この値を 0 に設定するとカラー境界の保持が無効になり、1 に設定するとすべてのカラー境界が厳密に保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0.5 です。
Q: 照会すると float を返します。
keepCreaseEdge(kce) boolean createqueryedit
true の場合、削減時に折り目エッジの保持を試みます。
C: 既定は true です。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は true です。
Q: 照会すると boolean を返します。
keepCreaseEdgeWeight(cew) float createqueryedit
keepCreaseEdge がオンの場合、このフラグは折り目エッジに割り当てるウェイトを指定します。この値を 0 に設定すると折り目エッジの保持が無効になり、1 に設定するとすべての折り目エッジが厳密に保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0.5 です。
Q: 照会すると float を返します。
keepFaceGroupBorder(kfb) boolean createqueryedit
true の場合、削減ではフェース グループの境界の保持が試みられます。これは、主としてマテリアル割り当ての定義に使用されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は true です。
Q: 照会すると boolean を返します。
keepFaceGroupBorderWeight(kfw) float createqueryedit
keepFaceGroupBorder がオンの場合、このフラグはマテリアル境界に割り当てるウェイトを指定します。この値を 0 に設定するとグループ境界の保持が無効になり、1 に設定するとすべてのグループ境界が厳密に保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0.5 です。
Q: 照会すると float を返します。
keepHardEdge(khe) boolean createqueryedit
true の場合、削減時にハード エッジの保持を試みます。
C: 既定は true です。
Q: 照会すると boolean を返します。
keepHardEdgeWeight(khw) float createqueryedit
keepHardEdge がオンの場合、このフラグはハード エッジに割り当てるウェイトを指定します。この値を 0 に設定するとハード エッジの保持が無効になり、1 に設定するとすべてのハード エッジが厳密に保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0.5 です。
Q: 照会すると float を返します。
keepMapBorder(kmb) boolean createqueryedit
true の場合、削減時に UV 境界の保持を試みます。UV 境界は、エッジのどちらかのサイドにあるフェースが UV の ID を共有していない場合に存在します。
C: 既定は true です。
Q: 照会すると boolean を返します。
keepMapBorderWeight(kmw) float createqueryedit
keepMapBorder がオンの場合、このフラグは UV マップ境界に割り当てるウェイトを指定します。この値を 0 に設定すると UV マップ境界の保持が無効になり、1 に設定するとすべての UV 境界が厳密に保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0.5 です。
Q: 照会すると float を返します。
keepOriginalVertices(kev) boolean createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。true の場合、頂点は元の位置を保持しようとし、最適なシェイプになるように再配置されません。
注: 新しいアルゴリズムでは、頂点は常に元の正確な位置を維持します(ただし、ID は変わります)。
C: 既定値は false です。
Q: 照会すると boolean を返します。
keepQuadsWeight(kqw) float createqueryedit
このフラグは、削減の間に四角形の面の保持をどの程度考慮するかを制御します。ウェイトが大きいほど、削減では四角形の面を保持しようとする傾向が強くなり、三角形が作成されにくくなります。バージョン フラグを 1 に設定し (-version 1)、keepQuadsWeight フラグを 1.0 に設定した場合、四角形の保持に優れた特別な四角削減アルゴリズムが使用されます。ただし、この特別な四角削減アルゴリズムはシンメトリをサポートしないので、keepQuadsWeight フラグを 1.0 に設定したときはシンメトリのフラグは無視されます。
C: 既定値は 0 です。
Q: 照会すると float を返します。
name(n) string create
作成されるノードに名前をつけます。
nodeState(nds) int createqueryedit

Maya のディペンデンシー ノードには 6 種類の設定可能な状態があります。通常(Normal)(0)エフェクトなし(HasNoEffect)(1)ブロッキング(Blocking)(2)ステータスは、グラフの評価方法を変更するために使用されます。

待機 - 通常(Waiting-Normal)(3)待機 - エフェクトなし(Waiting-HasNoEffect)(4)待機 - ブロッキング(Waiting-Blocking)(5)は、内部でのみ使用されます。これらは、インタラクション(例: 操作)の実行中にグラフのパーツを一時的に遮断します。操作が完了すると、ステータスは適切にリセットされます(例: 待機 - ブロッキング(Waiting-Blocking)ブロッキング(Blocking) にリセットされます)。

通常(Normal)およびブロッキング(Blocking)のケースはすべてのノードに適用できますが、エフェクトなし(HasNoEffect)はノード特定です。多くのノードはこのオプションをサポートしていません。プラグインは状態を MPxNode::state アトリビュートに保存します。誰もがこのアトリビュートを設定したり確認したりすることができます。これらの 3 つの状態に関するその他の詳細は次の通りです。

状態 説明
通常(Normal) 通常のノードの状態です。これが既定の設定です。
エフェクトなし(HasNoEffect)

エフェクトなし(HasNoEffect)オプション(別名: 通過)は、同じデータ タイプの出力を生成する入力を操作している場合に使用されます。 ほぼすべてのデフォーマが、他のいくつかのノードと同様に、この状態をサポートします。前に説明したように、すべてのノードでサポートされるわけではありません。

ノードの計算メソッドでエフェクトなし(HasNoEffect)状態のサポートを実装し、適切な操作を実行することが一般的です。プラグインはエフェクトなし(HasNoEffect)もサポートします。

この状態を普通に実装するには、ノードにアルゴリズムを適用しないで、適合する出力に直接入力をコピーします。デフォーマの場合は、この状態を適用することにより、入力ジオメトリが出力でデフォーム解除されたままになります。

ブロッキング(Blocking)

これはディペンデンシー ノードのベース クラスで実装され、すべてのノードに適用されます。ブロッキング(Blocking)は評価フェーズ中に接続に適用されます。 ブロックされた接続に対する評価要求が失敗を返すと、目的プラグが現在の値を保持します。 ダーティな伝播はこの状態の間接的な影響を受けますが、ブロックされた接続がクリーンアップされることはありません。

ノードをブロッキング(Blocking)に設定すると、すべての送信接続が解除されたのと同じ動作になる可能性があります。 ブロックされたノードの評価を直接要求しない限り、その後に再評価されることはありません。ブロックされたノードは getAttr 要求に引き続き応答しますが、下流ノードの getAttr は、ブロックされたノードを再評価しないことに注意してください。

ブロッキング(Blocking)に対して階層のルート変換を設定しても、自動的にはこの階層の子変換に影響しません。これを実行するには、ブロッキング(Blocking)状態に対してすべての子ノードを明示的に設定する必要があります。

たとえば、すべての子トランスフォームをブロッキング(Blocking)に設定するには、次のスクリプトを使用します。

 import maya.cmds as cmds def blockTree(root): nodesToBlock = [] for node in {child:1 for child in cmds.listRelatives( root, path=True, allDescendents=True )}.keys(): nodesToBlock += cmds.listConnections(node, source=True, destination=True ) for node in {source:1 for source in nodesToBlock}.keys(): cmds.setAttr( '%s.nodeState' % node, 2 ) 

このスクリプトを適用してオブジェクトの描画を継続できますが、アニメートは行えません。


既定: kdnNormal

percentage(p) float createqueryedit
このフラグは、削減中にオリジナルのメッシュのパーセンテージとして除去する頂点の数を指定します。このフラグは、終了フラグが 0 に設定されている場合、または古いアルゴリズムを使用する場合にのみ適用されます。
C: 既定は 0 です。100 にすると可能性のあるすべての頂点が除去され、0 にすると何も除去されません。
Q: 照会すると float を返します。
preserveLocation(pl) boolean create
このフラグは、元のジオメトリが保持された場合、新しいジオメトリが同じ場所に配置されることを保証します。
C: 既定は false です。
preserveTopology(top) boolean createqueryedit
このフラグは、削減の間にトポロジ タイプが保持されることを保証します。具体的には、入力が多様の場合は、出力も多様になります。また、このオプションは、メッシュ内の穴が閉じるのを防ぎます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は true です。
Q: 照会すると boolean を返します。
replaceOriginal(rpo) boolean create
「同じ位置」に作成(つまり置き換え)します(一部使用できないコマンドがあります)。注: このフラグは、「Reduce」メニュー項目で使用することを前提にしています。コマンド ラインから、polyReduce -rpo 0 を実行すると、シェーダ情報がオリジナルのメッシュから結果イメージにコピーされません。
sharpness(shp) float createqueryedit
シャープネスは、小さいシャープな詳細の保持と大きいシェイプの保持とのバランスを制御します。値が小さいほど、オブジェクトの全体的なシェイプに対して相対的に小さい詳細が集約される可能性が高くなります。値が大きいほど、詳細が保持されます。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 0 です。
Q: 照会すると float を返します。
symmetryPlaneW(sw) float createqueryedit
シンメトリ プレーンの W 値を指定します。このフラグは、新しいアルゴリズムを使用し(-version 1)、useVirtualSymmetry フラグが 2 に設定されている場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると float を返します。
symmetryPlaneX(sx) float createqueryedit
シンメトリ プレーンの X 値を指定します。このフラグは、新しいアルゴリズムを使用し(-version 1)、useVirtualSymmetry フラグが 2 に設定されている場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると float を返します。
symmetryPlaneY(sy) float createqueryedit
シンメトリ プレーンの Y 値を指定します。このフラグは、新しいアルゴリズムを使用し(-version 1)、useVirtualSymmetry フラグが 2 に設定されている場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると float を返します。
symmetryPlaneZ(sz) float createqueryedit
シンメトリ プレーンの Z 値を指定します。このフラグは、新しいアルゴリズムを使用し(-version 1)、useVirtualSymmetry フラグが 2 に設定されている場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると float を返します。
symmetryTolerance(stl) float createqueryedit
シンメトリを適用するときに使用する許容値です。メッシュの各頂点について、正確なシンメトリ ポイントを探した後、許容値の距離以内で正確なシンメトリに最も近い頂点を探します。値を大きくすると不正確なシンメトリになる可能性があり、値を小さくするとシンメトリが検出されない可能性があります。値は、オブジェクト空間での距離です。このフラグは、新しいアルゴリズムを使用し(-version 1)、useVirtualSymmetry フラグが 0 に設定されていない場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると float を返します。
termination(trm) int createqueryedit
このフラグは、メッシュを削減するときに使用する終端条件を指定します。このフラグは、新しいアルゴリズムにのみ適用されます。(-version 1)
0: パーセンテージ
1: 頂点の数
2: 三角形の数
C: 既定値は 0 です。
Q: 照会すると integer を返します。
triangleCount(tct) int createqueryedit
このフラグは、削減の後で保持する三角形のターゲット数を指定します。四角や機能の保持などの他の要素が優先され、実際の三角形の数がこれとは異なるものになる場合があります。このフラグは、新しいアルゴリズムを使用し(-version 1)、終了フラグが 2 に設定されている場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると integer を返します。
triangulate(t) boolean createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。このアトリビュートは、削減を行う前に、ジオメトリまたは選択したフェースを三角化するかどうかを指定します。
C: 既定は true です。
Q: 照会すると boolean を返します。
useVirtualSymmetry(uvs) int createqueryedit
このフラグは、削減の間にシンメトリを保持するかどうかを制御します。このフラグは、新しいアルゴリズムを使用し(-version 1)、keepQuadsWeight フラグが 1.0 未満の場合にのみ適用されます。
0: シンメトリを保持しません
1: 自動。削減の間に適切なシンメトリの検出が試みられます。
2: プレーン。削減の間に使用するシンメトリ プレーンを指定します。
C: 既定は 0 です。
Q: 照会すると integer を返します。
uvWeights(uwt) float createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。削減アルゴリズムにおいて UV の位置をどの程度考慮するかを示します。ウェイトが大きいほど、削減で UV 位置を保持しようとする傾向が強くなります。
C: 既定は 0 です。
Q: 照会すると float を返します。
version(ver) int createqueryedit
使用するポリゴンの削減アルゴリズムのバージョンです。
0: Maya 2013 以前で使用されていた古いアルゴリズム(下位互換用)
1: Maya 2014 以降で使用される、Softimage から派生した新しいアルゴリズム
既定値は下位互換性を保つために 0 ですが、最善の結果を得るには、メッシュの詳細の保持に優れた新しいアルゴリズムの使用をお勧めします。一部のフラグは特定のアルゴリズムにのみ適用され、これについては各フラグで説明されています。
C: 下位互換性を保つため、既定値は 0 です。
Q: 照会すると integer を返します。
vertexCount(vct) int createqueryedit
このフラグは、削減の後で保持する頂点のターゲット数を指定します。四角や機能の保持などの他の要素が優先され、実際の頂点の数がこれとは異なるものになる場合があります。このフラグは、新しいアルゴリズムを使用し(-version 1)、終了フラグが 1 に設定されている場合にのみ適用されます。
C: 既定は 0 です。
Q: 照会すると integer を返します。
vertexMapName(vmp) string createquery
出力メッシュに追加される、出力メッシュの頂点から入力メッシュの頂点へのマッピングを格納するカラー セットの名前です。カラー セットは RGB です。出力頂点にマップする元の頂点 ID は頂点 65536*r + g であり、r および g は頂点での赤と緑のチャネルです。青チャネルは、常に 0 になります。出力メッシュ内の各頂点には共有されるカラーがあります。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
Q: 照会すると string を返します。
vertexWeightCoefficient(vwc) float createqueryedit
このフラグは、ウェイト マップの各値に乗算する定数値を指定します。値 0 はウェイト マップをオフにします。このフラグは、新しいアルゴリズムを使用するときにのみ適用されます。(-version 1)
C: 既定値は 1 です。
Q: 照会すると float を返します。
weightCoefficient(wc) float createqueryedit
このフラグは古いアルゴリズムを使用するときにのみ適用され、下位互換性のために提供されます。削減を実行するときに、各頂点のウェイトにこの係数が乗算されます。通常、この値を編集する必要はありません。ウェイト付きの削減をより細かく制御できます。バージョン フラグが 1 に設定されている場合、このアトリビュートは新しいアルゴリズムの vertexWeightCoefficient で置き換えられます。
C: 既定値は 10000 です。
Q: 照会すると float を返します。

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

Python 例

import maya.cmds as cmds

cmds.polySphere( ver=1, n='plg' )
cmds.polyReduce( ver=1, p=35, 'plg.f[0:399]' )