移動先: 概要 戻り値 関連項目 フラグ Python の例

概要

polyMergeVertex([alwaysMergeTwoVertices=boolean], [caching=boolean], [constructionHistory=boolean], [distance=linear], [mergeToComponents=string], [name=string], [nodeState=int], [texture=boolean])

注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。

polyMergeVertex は「元に戻す」が可能、「照会」が可能、「編集」が可能です。

指定しきい値内の頂点をマージします。
同じオブジェクト上に存在する頂点はすべてマージできるため、作成されたジオメトリが非多様体になる可能性があります。

まず、選択した頂点のペアが比較されます。 相互に特定距離内にあるペアが、中間のエッジとともにマージされます。

次に、頂点間の距離が指定距離以内である場合、エッジを共有する、選択した頂点がすべてマージされます。

エッジのマージとは異なり、頂点のマージでは、頂点を結ぶエッジの向きが一致していなくても(つまり、隣接フェースの法線が同じ方向を向いていなくても)マージが実行されます。この制限事項が頂点のマージでは適用されないので、作成されたジオメトリは非多様体になることがあります。

alwaysMergeTwoVertices が設定されているときに、頂点が 2 つしかない場合、許容値は無視され、頂点はマージされます。

作成されたメッシュには、ジオメトリを有効にするために頂点かエッジが余分に含まれることがあります。

戻り値

stringノード名

戻り値の型は照会モードでは照会フラグが基になります。

関連項目

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

フラグ

alwaysMergeTwoVertices, caching, constructionHistory, distance, mergeToComponents, name, nodeState, texture
ロング ネーム(ショート ネーム) 引数型 プロパティ
distance(d) linear createqueryedit
距離を指定します。この距離以内である場合、頂点はマージされます。
C: デフォルトは 0.0 です(つまり、頂点が一致している場合)。
Q: 照会すると double が返されます。
alwaysMergeTwoVertices(am) boolean createqueryedit
このフラグは、距離に関係なく、頂点が 2 つしか選択されていない場合は常にマージするかどうかを指定します。
C: デフォルトは false です。
Q: 照会すると boolean を返します。
texture(tx) boolean createqueryedit
このフラグは、3D エッジに加えてテクスチャも縫合するかどうかを指定します。
C: デフォルトは true です。
Q: 照会すると boolean を返します。
mergeToComponents(mtc) string createqueryedit
オプションで、すべての頂点のマージ位置を定義します。設定した場合、距離フラグは無視され、代わりに設定コンポーネントの中心点が計算され、頂点はすべてその位置にマージされます。
C: デフォルトは空文字列です。
Q: 照会するとstring を返します。
一般的なフラグ
name(n) string create
作成されるノードに名前をつけます。
constructionHistory(ch) boolean createquery
コンストラクション ヒストリをオンまたはオフにします(適切な場合)。コンストラクション ヒストリがオンの場合、対応するノードがメッシュのヒストリ チェーンに挿入されます。コンストラクション ヒストリがオフの場合、 操作オブジェクト上に直接行われます。
注: コンストラクション ヒストリがすでにオブジェクトにある場合は、 このフラグは無視され、ノードは必ずヒストリ チェーンに挿入されます。
caching(cch) boolean createedit
すべてのアトリビュートのキャッシングを切り替えることで、再計算を不要にします。
nodeState(nds) int
ノードの評価方法を定義します。
  • 0: Normal
  • 1: PassThrough
  • 2: Blocking
  • 3: 内部的に無効。有効にすると、Normal の状態に戻ります。
  • 4: 内部的に無効。有効にすると、PassThrough 状態に戻ります。
  • 5: 内部的に無効。有効にすると、Blocking 状態に戻ります。

: コマンドの作成モードで使用可能なフラグ : コマンドの編集モードで使用可能なフラグ
: コマンドの照会モードで使用可能なフラグ : タプルまたはリストとして渡された複数の引数を持てるフラグ

Python の例

import maya.cmds as cmds

cmds.polyPlane( sx=5, sy=5, n='plg1' )
cmds.polyPlane( sx=5, sy=5, n='plg2' )
cmds.move( 0.55, 0, -1.25, 'plg1', ws=True )
cmds.move( -0.55, 0, -1.25, 'plg2', ws=True )
cmds.polyPlane( sx=5, sy=5, n='plg3' )
cmds.polyPlane( sx=5, sy=5, n='plg4' )
cmds.polyPlane( sx=5, sy=5, n='plg5' )
cmds.move( 0.55, 0, 1.25, 'plg4', ws=True )
cmds.move( -0.55, 0, 1.25, 'plg5', ws=True )

# First method:
cmds.polyUnite( 'plg1Shape', 'plg2Shape' )
cmds.select( 'polySurface1.vtx[6]', 'polySurface1.vtx[12]', 'polySurface1.vtx[18]', 'polySurface1.vtx[24]', 'polySurface1.vtx[47]', 'polySurface1.vtx[53]', 'polySurface1.vtx[59]', 'polySurface1.vtx[65]', r=True )
cmds.polyMergeVertex( d=0.15 )

# Second method:
cmds.polyMergeVertex( 'plg3.vtx[24]', 'plg3.vtx[30:31]', 'plg3.vtx[8:10]', 'plg3.vtx[14:16]', 'plg3.vtx[20:22]', d=0.25 )

# To create non-manifold geometry:
cmds.polyUnite( 'plg4Shape', 'plg5Shape' )
cmds.select( 'polySurface2.vtx[0]', 'polySurface2.vtx[6]', 'polySurface2.vtx[12]', 'polySurface2.vtx[18]', 'polySurface2.vtx[24]', 'polySurface2.vtx[30]', 'polySurface2.vtx[41]', 'polySurface2.vtx[47]', 'polySurface2.vtx[53]', 'polySurface2.vtx[59]', 'polySurface2.vtx[65]', 'polySurface2.vtx[71]', r=True )
cmds.polyMergeVertex( d=0.25 )
# Note that there is only one vertex at this merged point and the
# resulting polygonal object is non-manifold;()