簡単なスクリプト

MELスクリプトとは

MELコマンドはファイルに書いておくと Script Editorから読み込むことによって何度でも実行できる。
このMELコマンドを書き込んであるファイルをMELスクリプトと言う。
ファイルに書いておけば、そのファイルを消さない限り何度でも同じコマンドを実行できるし、後で必要に応じて書き換えてゆくことによって違う処理を実行することができる。
そして、後で学習するように変数、制御構造などを使用することによって複雑な処理を行うプログラムを作ることができるようになる。
また、MELのスクリプトはファイル名を変えれば同じフォルダーに、いくつでも作っておくことができる。

作業用のフォルダー(ディレクトリ)作成

これから授業を進めてゆく時の作業用フォルダーとしてホームの下にmelという名前のフォルダーを作成しておこう。 (以下の % はコマンドプロンプトである)

% cd          ← ホームへ移動(すでにホームに入る場合は必要無し)
% mkdir mel   ← mel フォルダー(ディレクトリ)を作る
% cd mel      ← mel フォルダーに移動(以後この中で作業をする) 

以後の授業で作成するMELスクリプトはすべてこのmelフォルダーの中に作るようにすること。

スクリプトを作ってみる

スクリプトの作り方と実行例

  1. まず、test.melというファイルをmelフォルダーの中にエディター(vi)によって作る。
    ファイルの内容は、以下のように書いておく。
    sphere;
    scale 1 3 1;
    
  2. Script Editorからtest.melを読み込んで実行する。
    そのためには以下の2種類の方法がある。
  • y軸方向に長くなった球が表示される。

    スクリプトの保存方法

    Script Editor内に表示されているコマンドをファイルに保存することができる。
    保存しておいたファイルは上の方法によっていつでも実行できる。

    1. すでにMAYAが立ち上がって、Script Editorが表示されているとする。
    2. Script Editorの上または下のウインドウに表示されているコマンドで保存したいものをマウスで選択する。
      ちなみに、マウスのダブルクリックで1単語分、3回クリックで1行分、4回クリックでウインドウ全体を選択できる。
    3. Script Editorの File → Save Script によってファイルを保存する。
      保存するファイル名は最後に.melをつけた名前にする。 (たとえばtest2.mel)

    Script Editor のEditメニュー

    上で説明していない Script Editor のメニュー(Edit)について説明しておこう。

    Edit → Execute
    File → Open Script...などで読み込んだスクリプトを実行する。
    Edit → Clear History
    ヒストリーウインドウ(Script Editor の上のウインドウ)のクリア。
    Edit → Clear Input
    インプットウインドウ(Script Editor の下のウインドウ)のクリア。
    Edit → Clear All
    ヒストリーおよびインプットウインドウ(Script Editor の上下のウインドウ)のクリア。
    Edit → Echo All Commands
    実行されたMELコマンドをすべてヒストリーウインドウに表示する。
    GUI(マウス)によって実行されたMELコマンドがすべて表示されるようになる。
    Edit → Show Line Numbers
    MELスクリプトなどにエラーがあった場合、エラーのあった行番号を表示する。
    MELスクリプトのデバッグに便利なのでチェックしておくこと。

    上の図では、2行目(line 2)にエラーがあるのがわかる。
    Edit → Show Stack Trace
    不明のコマンド・プロシージャーなどがあった場合、エラーのトレース結果を表示する。
    これをチェックしておくと、以下のようにスペルの間違ったコマンド(moue)を実行すると
    sphere;
    moue 1 2 3
    
    トレース結果が別ウインドウに表示される。

    練習

    まとめ

    参考


    Prev | Next
    Home | Contents
    abe@injapan.net