【MEL】頂点座標を転送

![]() | AriTransferPosition |
オブジェクトの頂点座標を部分的に構造が同じ別のオブジェクトに転送します。
トポロジ、頂点番号、距離、のいずれかの情報から移動することができます。
画像は例なので、大げさに頂点を移動させていますが、実作業で使う場合、シンメトリー化同様少しずれているものを調整することに使用することのほうが多いと思います。
シンメトリー化を行うAriSymmetryCheckerと同じアルゴリズムを使用して移動します。
単なる頂点移動なのでヒストリは残らないはずです。

使い方 |
転送元の情報を取得 |

転送元にしたいオブジェクトを選択して、「Get」ボタンを押します。

ローカル/ワールド
Worldのチェックを入れると、原点からの距離、絶対座標で処理します。

ローカルは、オブジェクトのピボットからの座標です。

座標の異なる頂点確認 |
転送元と転送先で、どれだけ頂点座標が違っているか確認できます。
転送先のオブジェクトを選択して「探索(Search)」ボタンを押します。
すると、転送元と座標が異なっている頂点が選択されます。

ピボット座標を基準にした相対の位置で判断しています。
同一座標に移動 |
「移動」ボタンを押すと、「移動方法」の設定を参照して、転送元と同じ座標に移動します。

移動するために参照する設定は下記のとおりです。
移動方法 : 頂点番号(VertexID)
頂点番号を参照して、同じ座標に移動させます。
頂点番号が同じモデルであれば、どんな状態でも転送できますが、少しでも異なっている場合には、適切な位置に移動できません。

頂点選択で任意の箇所だけの一部移動ができます。
移動方法 : トポロジ(Topology)
座標の異なる頂点周辺の「同一座標頂点」と「ポリゴンの割構造(トポロジ)」を参考にして、移動します。
頂点番号が異なる場合でも、構造が同じ、かつ周囲に同一座標がある場合のみ、使用できます。
トポロジの状態によって、うまく移動できる場合とできない場合があります。
四角形フェースの場合うまくいきやすいです。
三角形フェースが多いとうまくいきにくいです。

移動させたい頂点の周辺に同一頂点があれば、それ以外の関係ないところのトポロジは異なっても大丈夫です。

頂点選択で任意の箇所だけの一部移動もできますが、選択箇所によっては移動できない場合もあります。その場合、選択範囲を拡張してみてください。
頂点選択で移動させたい部分のみ選択にしたほうが処理が速くなります。
移動方法 : 距離(Distance)
「移動近似値」で設定した距離内に頂点があれば、移動されます。
頂点番号もトポロジも異なっている場合に使用できますが、範囲内の頂点に強制的に移動してしまうので、複数同時に移動させるのは難しいです。

最短ボタンを押せば、取得した頂点と、選択している頂点の、最短距離を取得できます。

UV
追記
UVにチェックを変更すると、UVに対して行えます。

頂点同様、基準にしたいUVを選択しGetボタン。

シェルが別であれば同オブジェクト内でも移動可能です。
構造が同でトポロジでを参照して移動したい場合、
ある程度同一座標のUVが必要なので、
移動(Move)ボタンを押す前に、あらかじめVキーを押しながら(スナップ)移動などで、いくつか同じ座標に移動させておきます。

移動したいUVを選択して、移動(Move)ボタンで、UVが移動します。

構造によってはうまくいかないこともあります。
更新
2020/09/13
・UVに対応
2017/08/27
・ワールドモード追加
・最短距離取得ボタン追加
ダウンロード
ダウンロードはこちらからどうぞ。
Download
つぶやき
トポロジでの移動は、シンメトリー化と同じ仕組みで行っています。気が向いたらUVもにも対応させたいとおもいます。
毎度ですが、丁寧に作り直して日が浅いです。おかしなことあったら修正します。
tag : Maya, MEL, モデリング, AriTransferPosition,
スポンサーリンク
コメントの投稿
No title
maya2018日本語に対応しておりますでしょうか?起動しないものでして・・
Re: No title
こちらのMaya2018環境でためしたところ実行できております。
実行方法はこちらの通りでしょうか?
http://cgjishu.net/blog-entry-4.html
よろしくお願いします。
No title
XSIからMAYAに移行してきたクチですが、
本当に痒いところに手が届いて、作業時のストレスを
軽減してくれる素晴らしいスクリプト群ですね。
これだけたくさんの便利なスクリプトを無料で
公開していただいて本当にありがたいです。
AriTransferPositionも重宝しています。
ぶっちゃけ自分の環境の場合、UV対応してくれたら
さらに利便性が上がりますw
気が向いたら対応お願い致します。(´∀`*)
Re: No title
なるほどです。
作業的にはちょっと重めなので、すぐに対応はお約束できませんが、
必要とされている方がいらっしゃるのはありがたいことで、
少なくともコメントいただく前よりやる気は上がってますので、
すみませんが気長にお待ちいただけると幸いです。
よろしくお願いいたします。
No title
けしてご無理をなさらぬよう
気長~にお待ちしております。(´∀`*)
ありがとうございます
頂点番号がバラバラになってしまった、シェイプターゲットとベースの
頂点番号の修復に使えました。とても助かりました。
ベースオブジェクトを複製してターゲットの頂点情報を転送することで
新しいターゲットを作るという方法に使いました。
1)ベース複製し、新ターゲット用にリネーム
2)壊れたターゲットから頂点取得
3)新ターゲットに頂点転送
4)新ターゲットをブレンドシェイプのターゲットとして使う
本当に助かりました。
ありがとうございました。