Rhinoceros マクロを記述する際の注意

マクロを記述する際に注意することについて触れたいと思います。

マクロに関してはRhinocerosヘルプから『コマンドマクロとスクリプト作成』にて解説ドキュメントがあります。しかし、マクロを作った経験がない方だと分かりにくかったり不十分に思える箇所もあるので補足の意味を含めて説明します。マクロを作る際に注意したいことは以下のことです。

  • 最初に『!(感嘆符)』
  • 半角英数で入力
  • コマンドの前に『_(下線)』
  • マクロをコマンドアイコンに登録したら必ず保存

それでは、それぞれ見ていきましょう。

最初に『!(感嘆符)』

!は入力中のコマンドをキャンセルするEscキーと同じ働きをします。

マクロの最初に!を記述していないと、実行中のコマンドがある場合にその中でマクロを実行してしまうので、正常に機能しません。そのために実行中のコマンドをキャンセルさせる必要があります。他のコマンドアイコンボタンエディタ(アイコン上でshift+右クリック)で開いて見てもらえば分かりますが、ほとんどのコマンドが!を最初に記述しています。コマンドアイコンをクリックした時に問題なくコマンドが実行されているのは、この!が機能しているからです。

最初に(半角スペース)を記述しても同じく機能しますが、記述の有無が非常にわかりにくいのでお勧めできません。なので!は忘れずに最初に記述しましょう。

半角英数で入力

Rhinocerosは多言語に対応しています。この記事を読んでいる方はおそらく日本語版を使用していると思います。マクロは日本語で記述しても日本語版であれば実行できます。

例えば前々回の記事、前回の記事で扱った! _Circle 0 D _Pauseであれば下記のように記述することができます。

! _Circle 0 直径 一時停止

日本語版のRhinocerosであればこのマクロで問題なく実行できます。ここで、下のマクロと比べてみましょう。

! _Circle 0 直径 一時停止

一見すると全く同じ様に見えますが、実はこのマクロは正常に動作しません。直径一時停止の間が (全角スペース)となっているのが原因です。

プログラムなどでは全角・半角やアルファベットの大文字・小文字は別物として区別されて扱われることが多く、Rhinocerosのマクロは半角スペースを使わないといけないからです。間違えなければ問題はありませんが、全角と半角をその都度切り替えて入力していると、気付かないうちに全角スペースを使ってしまっている場合が生じます。そうなると間違った箇所を探すのも手間がかかるので、出来ることなら全角入力は避けて半角英数で入力するようにしましょう。

コマンドの前に『_(下線)』

これまでの記事ではあまり触れませんでしたが、_Circleの最初の_の役割にも触れておきましょう。

_は英語版のRhinoceros以外でも共通して英語コマンド名を認識させるためのものです。日本語版のRhinocerosではもともと英語表記のコマンドが使われているので、特に意識することはないのですが、マクロを作る際には少し気を付けなければなりません。例として、押し出しコマンドオプション設定の項目を見てみましょう。

コマンドオプション説明3

両方向(B)ソリッド(S)元のオブジェクトを削除(L)などは、はいいいえで選択する項目となっていて、これをマクロで設定するとこのようになります。

! _ExtrudeCrv _Pause B=いいえ S=いいえ L=はい

先に触れたようにマクロの全角文字入力は避けたほうが望ましいです。だとしたら英語のYesNoをつかえば解決するように思えますが、日本語版Rhinocerosだと正常に機能しません。そこで_(下線)を使う必要があります。

! _ExtrudeCrv _Pause B=_No S=_No L=_Yes
! _ExtrudeCrv _Pause B=_N S=_N L=_Y

二通りの記述をしましたが_Yes_No_Y_Nのようにすればはいいいえを使わずにマクロを作ることが出来ます。このようにして出来る限り半角英数入力を心掛けることで思わぬ入力ミスを無くし、マクロを作る環境を整えましょう。

マクロをコマンドアイコンに登録したら必ず保存

最後は苦労して作ったマクロの保存についてです。

マクロエディタには保存機能はありませんので、保存するには外部テキストエディタなどで保存しなければなりません。特に難しいことはなく、Windowsならメモ帳で構いませんし、いつも使っているテキストエディタがあればそちらで保存すれば良いです。再び利用する時はマクロエディタにコピーアンドペーストすればよいです。

気を付けなければならないのが、コマンドアイコンにマクロを登録した後、ツールバーファイルを保存する時です。

Rhinocerosは終了時に自動でツールバー設定を保存してくれています。この時にコマンドアイコンも保存されるので、とても有り難い機能なのですが、Rhinocerosを複数起動している場合や、他で高負荷な処理などをしていると正常に完了せず、保存されないことがあります。なので、コマンドアイコンにマクロを登録した場合はツールバーファイルを手動で上書き保存してください。その際にRhinocerosを複数起動している場合は不要なものは先に終了させましょう。

ツールバーの編集は『ツールバーレイアウトの編集』で行います。Toolbarとコマンドプロンプトに入力すれば立ち上がります(大文字小文字は関係なし)。コマンドアイコンは下図を参考に。メニューバーからだとツール→ツールバーレイアウトです。

ツールバーアイコン位置

保存するツールバーファイルを間違えずに選択してから、メニューバーからファイル→上書き保存です。

今回はマクロを取り扱う上での心得のような内容でしたが、知っていると平凡なミスをしなくて済むと思います。次は複数のコマンドを使ったりオプション設定をしたりして実際にマクロを作っていきたいと思います。