ジャンプ先: 概要. 戻り値. フラグ. Python 例.
polyAutoProjection([caching=boolean], [constructionHistory=boolean], [createNewMap=boolean], [insertBeforeDeformers=boolean], [layout=int], [layoutMethod=int], [name=string], [nodeState=int], [optimize=int], [percentageSpace=float], [pivot=[linear, linear, linear]], [pivotX=linear], [pivotY=linear], [pivotZ=linear], [planes=int], [projectBothDirections=boolean], [rotate=[angle, angle, angle]], [rotateX=angle], [rotateY=angle], [rotateZ=angle], [scale=[float, float, float]], [scaleMode=int], [scaleX=float], [scaleY=float], [scaleZ=float], [skipIntersect=boolean], [translate=[linear, linear, linear]], [translateX=linear], [translateY=linear], [translateZ=linear], [uvSetName=string], [worldSpace=boolean])
注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。
polyAutoProjection は、取り消し可能、照会可能、および編集可能です。
複数の正射投影を同時に使用し、マップをオブジェクトに投影します。
照会モードでは、戻り値のタイプは照会されたフラグに基づきます。
caching, constructionHistory, createNewMap, insertBeforeDeformers, layout, layoutMethod, name, nodeState, optimize, percentageSpace, pivot, pivotX, pivotY, pivotZ, planes, projectBothDirections, rotate, rotateX, rotateY, rotateZ, scale, scaleMode, scaleX, scaleY, scaleZ, skipIntersect, translate, translateX, translateY, translateZ, uvSetName, worldSpace
| ロング ネーム(ショート ネーム) |
引数タイプ |
プロパティ |
|
| Global Values |
layoutMethod(lm)
|
int
|
 
|
|
使用するレイアウト方法を設定します。 0: ブロック スタッキング 1: シェイプ スタッキング
|
|
pivot(pvt)
|
[linear, linear, linear]
|
 
|
|
スケーリングと回転のピボットを指定します。 C: 既定は 0.0 0.0 0.0 です。 Q: 照会すると float[3] を返します。
|
|
pivotX(pvx)
|
linear
|
 
|
|
スケーリングと回転の X ピボットを指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
pivotY(pvy)
|
linear
|
 
|
|
スケーリングと回転の Y ピボットを指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
pivotZ(pvz)
|
linear
|
 
|
|
スケーリングと回転の Z ピボットを指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
rotate(ro)
|
[angle, angle, angle]
|
 
|
|
X、Y、Z の回転角度を指定します。 C: 既定は 0.0 0.0 0.0 です。 Q: 照会すると float[3] を返します。
|
|
rotateX(rx)
|
angle
|
 
|
|
X の回転角度を指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
rotateY(ry)
|
angle
|
 
|
|
Y の回転角度を指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
rotateZ(rz)
|
angle
|
 
|
|
Z の回転角度を指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
scale(s)
|
[float, float, float]
|
 
|
|
スケーリング ベクトルを指定します。 C: 既定は 1.0 1.0 1.0 です。 Q: 照会すると float[3] を返します。
|
|
scaleX(sx)
|
float
|
 
|
|
スケーリング ベクトルの X を指定します。 C: 既定は 1.0 です。 Q: 照会すると float を返します。
|
|
scaleY(sy)
|
float
|
 
|
|
スケーリング ベクトルの Y を指定します。 C: 既定は 1.0 です。 Q: 照会すると float を返します。
|
|
scaleZ(sz)
|
float
|
 
|
|
スケーリング ベクトルの Z を指定します。 C: 既定は 1.0 です。 Q: 照会すると float を返します。
|
|
translate(t)
|
[linear, linear, linear]
|
 
|
|
このフラグは移動ベクトルを指定します。 C: 既定は 0.0 0.0 0.0 です。 Q: 照会すると float[3] を返します。
|
|
translateX(tx)
|
linear
|
 
|
|
X 移動ベクトルを指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
translateY(ty)
|
linear
|
 
|
|
Y 移動ベクトルを指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
translateZ(tz)
|
linear
|
 
|
|
Z 移動ベクトルを指定します。 C: 既定は 0.0 です。 Q: 照会すると float を返します。
|
|
| Common poly modifier operation flags |
caching(cch)
|
boolean
|
 
|
|
すべてのアトリビュートのキャッシングを切り替えることで、再計算を不要にします。
|
|
constructionHistory(ch)
|
boolean
|

|
|
コンストラクション ヒストリをオンまたはオフにします(適切な場合)。コンストラクション ヒストリがオンの場合、対応するノードがメッシュのヒストリ チェーンに挿入されます。コンストラクション ヒストリがオフの場合、操作オブジェクト上に直接行われます。 注: コンストラクション ヒストリがすでにオブジェクトにある場合は、このフラグは無視され、ノードは必ずヒストリ チェーンに挿入されます。
|
|
createNewMap(cm)
|
boolean
|
|
|
新しいマップを作成する必要がある場合は、true に設定します。
|
|
insertBeforeDeformers(ibd)
|
boolean
|
|
|
新しく作成したノードを任意のデフォーマ ノードの前に挿入する必要がある場合は、true に設定します。
|
|
layout(l)
|
int
|
 
|
|
使用するレイアウト アルゴリズムです。 0: UV ピースはレイアウトに設定されません。 1: UV ピースは U 軸に沿って位置合わせます。 2: UV ピースは正方シェイプに移動されます。
|
|
name(n)
|
string
|
|
|
|
nodeState(nds)
|
int
|
 
|
|
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
|
|
optimize(o)
|
int
|
 
|
|
切断の生成に異なる 2 つのフレーバを使用します。 0 すべてのフェースが最適なプレーンに割り当てられます。これによりマップの歪みが最適化されます。 1 小さな UV のピースが大きなピースに統合されます。ここでさらに歪みが発生するのは不思議ではありません。この方法では、UV ピースの数は少なくなる傾向があります。
|
|
percentageSpace(ps)
|
float
|
 
|
|
レイアウトを正方形に設定した場合、この値は各 UV ピースの周りに追加されるテクスチャ領域のパーセンテージです。このコマンドを使用して、テクスチャ内の各 UV ピースがそれぞれ個別のピクセルを使用することを確認できます。 最大値は 5% です。
|
|
planes(p)
|
int
|
 
|
|
使用される中間の投影の数。有効な数字は、4、5、6、8、12 です。 C: 既定は 6 です。
|
|
projectBothDirections(pb)
|
boolean
|
 
|
|
このフラグは、使用するリファレンスを指定します。オンの場合: 投影は正反対のフェースにミラーリングされます。オフの場合: 投影は反対のフェースにミラーリングされません。 C: 既定はオフです。 Q: 照会すると integer を返します。
|
|
scaleMode(sc)
|
int
|
 
|
|
投影後にピースをスケールする方法は、次のとおりです。 0: スケールは適用されません。 1: 単位正方形に合わせて均一にスケールします。 2: 単位正方形に合わせて非比例にスケールします。
|
|
skipIntersect(si)
|
boolean
|
 
|
|
オンの場合、UV ピースの交差はテストされません。これにより投影は速くなり、ピースも少なくなりますが、UV 空間のオーバーラップが発生することがあります。
|
|
uvSetName(uvs)
|
string
|
|
|
|
worldSpace(ws)
|
boolean
|
 
|
|
このフラグは、使用するリファレンスを指定します。オンの場合: すべてのジオメトリ値はワールド リファレンスで考慮されます。オフの場合: すべてのジオメトリ値はオブジェクト リファレンスで考慮されます。 C: 既定はオフです。 Q: 照会すると int を返します。
|
|
フラグはコマンドの作成モードで表示できます
|
フラグはコマンドの編集モードで表示できます
|
フラグはコマンドの照会モードで表示できます
|
フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。
|
import maya.cmds as cmds
# Create a plane with default UVs.
cmds.polySphere( n='sph' )
# Automatic projections with 6 planes.
cmds.polyAutoProjection( 'sphShape.f[*]' )