LoginSignup
3
2

More than 5 years have passed since last update.

MAYAのMELでWindowを表示させてみよう

Posted at

概要

MayaのMELは高機能なので色々と出来ます。
逆に色々出来すぎるだめ、ネットで検索しても
なかなか細かいことが載ってなかったりします。

今回は「Windowを表示しMeshのみを羅列する」スクリプトを
自分の勉強がてら書いてみました。

ご参考になれば幸いです。

MELコード

Window.mel
// Meshを検索する関数
global proc SearchMesh(){
    string  $obj;
    $allObjects = `ls -l`;
    // Meshだけを探す
    for ( $obj in $allObjects ) {
        if ( `nodeType $obj` == "mesh" ) {
        // Meshの名前をプリント
        print ($obj + "\n");
    }
}
}
// Window表示
string $window = `window -title "Mesh Search" // Windowのタイトルを指定
       -iconName "Short Name"
       -minimizeButton off // Windowミニマムボタンをなくす
       -maximizeButton off // Window最大化ボタンをなくす
       -widthHeight 250 100`; // Windowサイズを指定
columnLayout -adjustableColumn true;
       // Mesh検索ボタン
       button -label "Search Mesh" -command ("SearchMesh");
       // クローズボタン
       button -label "Close" -command ("deleteUI -window " + $window);
setParent ..;

// ウィンドウを表示させる
showWindow $window;


作成したウィンドウ

MeshSearch-MEL-Sample2.png

結果

MeshSearch-Result.png

解説

ls コマンドが Maya内にあるすべてのものを列挙するコマンド
window コマンドが Window を作成するコマンド
button コマンドが ボタンを作成するコマンドで引数に [-command]をつけるとボタンを押下したときに実行されるものを指定

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2