[mel] scriptEditorから覚えるmel講座 その3 計画をたてて改良しよう の準備

前回、Melをどうやって読めば良いか について書いたので
今回は実際に、読み取ったMelコマンドから 実際に使うコマンドに加工していきます。
 まず、どんなコマンドにするか計画を立てます。
今回つくりたいものは 【カーブにClusterをくっつけて、Locatorで簡易コントローラーを作成する】
なので、まずは 指定のカーブに対して カーブのCV分 クラスターを作り Locatorを配置する コマンドにします。

さらっと書きましたが、この 目的(【】の部分)に対して どう作るか というのはとても重要です。
どう作ると使いやすいか どうあるべきなのか 自分が使うときのことを考えて計画を立てないと
せっかく作ったのに、使われずにフォルダの奥深くに眠りにつくmelファイルになってしまいます。

まずは、処理を整理します。
整理をする方法として

1 なにを与えて(指定して)
2 どういう処理をして
3 なにを返すか
この3つを、まずは考えます。
今回は
1 カーブを選択
2 ロケーターを数分作る
3 なにも返さない

となります。
3は、 何か処理をしてその結果が欲しい時などに使いますが 今回はロケーターを作るコマンドなので使いません。
使う場合は、 どういう値が どういう形式で返るか を考えますが詳細は別の機会に。

次に このうちの2つめ 実際の処理の部分をさらに細く整理します。

この時のコツは、
1 繰り返しするところをまとめる
ロケーターを CV分作る のように。
2 処理を分ける必要があるなら書く
もし ~ の時は Aをする Bをする。
3 なに を どうする をはっきりと書く

の3つです。
基本、プログラムは 条件分岐と繰り返しの組み合わせです。
なにをどうするか を、この2つを軸に整理してあげればプログラムにできる日本語文章の完成になります。
その時、対象がはっきりしていないとあとで困るので なににたいして どうするのかは 明確にします。

例)
カーブを選択する
選択したカーブのCVの数分 下の処理を繰り返す
  CVにクラスターを作る
  ロケーターを作る
  ロケーターをCVの位置に合わせる
  クラスターをロケーターにポイントコンストレインする
作成したクラスターとロケーターをグループにまとめる 
 
わりと↑はスクリプトを理解して書いてるところがあるので「そういわれても…どう書いたらわからん!」というひとは
その1 でやってた作業を なにをしたかを 日本語で書き起こしていくようにすると良いかなと思います。

ここまでの手順をざっくりまとめると

手で作る → コマンドがどうあるべきかを考える → 手で作った工程を参考に処理をまとめる → 日本語で書き起こす → 実際のスクリプトを作る 

という感じです。
ここまでなにしてきたのか?というと スクリプトを書くための 設計図を書いていた わけですね。
今回は文章で書きましたが、図とかで書いたりしても良いですし どういう処理をどう流れでやるのか 整理して組み立てる
というのがわかりやすければ、やりやすい方法で書けば良いと思います。
よくある方法として、フローチャートを使って作図する方法なんかがあります

ここまで出来ればスクリプト作業は終わったようなものです。
あとは、melのお約束事に沿って繰り返し処理や条件分岐を書いて、
前回作ったログからコマンドをコピペしていくだけです。

次回、ようやくmelが本格的に出現します。
↑の 例 の文章を実際にmelにしていくわけですが、その上でわからないこと
繰り返し処理ってどうやって書くの? 
とか
カーブを選択してCV分繰り返すのはどうするの?
とか
そこのところを順番に解説します。

なかなか本題に入るまでが長いですね…

コメントを残す

メールアドレスが公開されることはありません。


*