Rhinocerosで作業しているとオブジェクトが複数になるにつれて作業しづらくなっていきます。レイヤーに振り分けたり、表示色を変えたりするでしょう。今回はオブジェクトの表示色を設定するときに使えるマクロを作っていきたいと思います。
まず、オブジェクトに表示色を設定する流れを見てみましょう。
通常はプロパティパネルから設定していきます。プロパティパネルが表示されていない場合はメニューバー→パネル→オブジェクトのプロパティにチェックすると表示されます。もしくは他のパネルのタイトルタブ領域で右クリックするとパネル一覧が表示されますので、プロパティにチェックして下さい。プロパティパネルの表示はオブジェクトが選択・未状態の状態で下記のように変わります。
色設定は オブジェクトが選択されている状態からプロパティパネルの表示色で設定できます。プルダウンメニューが開きますのでそこから色を選択するようになります。
この時に選択できる色はデフォルトだと上記のように限られた種類となり、他の色を設定する場合は、その他をクリックしてカラーピッカーで選択するようになります。
デフォルトで設定されている赤・黄色・緑・シアン・青・マゼンタのみを使うならまだしも、その他の色設定をするのには手間が掛かります。個人的には原色のような鮮やかな色を見ての長時間の作業では目に堪えます。そこでマクロで好みの色をスムーズに設定出来るようにしていきます。
このマクロでは前回の記事では触れていなかったマクロの記述方法を使います。コマンドの前に『–(ハイフン)』を付ける、です。
コマンドの前に『–(ハイフン)』
RebuildやLoftなどのようにコマンドの実行中に下記のようなダイアログボックスが立ち上がるものがあります。 このようなコマンドの場合はそこでマクロが一旦停止してしまいます。
–を記述することでダイアログボックスで行うオプション設定をコマンドプロンプトで行えるようになります。これにより通常はダイアログボックスが立ち上がってしまうコマンドでも、マクロを使ってオプション設定をすることが可能となります。
! -_Rebuildや! -_Loftのようにコマンドの前に–を記述することで、ダイアログボックスでオプション設定していた部分が、このようにコマンドプロンプトで表示されるように変わります。
マクロの作成
これを踏まえて、–を使って色設定をするマクロを作ってみます。完成形は下記になります。
! -_Properties _Pause O C O 255,0,0 _EnterEnd _SelNone
割とコンパクトにまとまりました。それでは順番を追って見ていきましょう。
画像はコマンドプロンプトでの表示が実際にどうなっているかを載せてあります。
① 『オブジェクトのプロパティ』を! -_Propertiesで実行します。
② 『プロパティを編集するオブジェクトを選択』はユーザー入力するので_Pauseを記述します。 この場合はオブジェクトを選び、Enterか右クリックするまでに当たります。
③ 『オプションの選択』はオブジェクト(O)なので、Oと記述します。
④ 『変更するプロパティ』は色(C)なので、Cと記述します。
⑤ 『色のソース』はオブジェクト(O)です。色(L)はレイヤの設定の色になるので注意して下さい。Oと記述します。
⑥ 『新規オブジェクト色』でRGBの値を指定して色を設定します。今回のマクロでは赤色を指定しているので、255,0,0とRGBの値をコンマで区切って入力します。スペースは入れないように気を付けましょう。ちなみにRGBの値とはカラーピッカーで色を選択したときに連動して表示されているR・G・Bのそれぞれの値のことです。
⑦ _EnterEndで-_Propertiesコマンドを終了します。
⑧ _SelNoneでオブジェクトを選択していない状態にします。これはオブジェクトを選択した状態で今回のマクロを実行すると、マクロ終了後にそのままオブジェクト選択状態が続くため、色の変更が出来たのか分かりづらいので記述しています。普段はあまり気にしない_SelNoneや_SelLastなど選択系コマンドはマクロでは使う機会があります。
以上の流れで。今回のマクロは構成されています。各コマンドのオプション設定はコマンドプロンプトの表示を見ながらすれば迷わないと思います。
コマンドアイコンに登録すれば、ワンクリックで指定した色設定に出来ます。分かりやすいようにアイコン画像に色付けして左クリック・右クリックと2色を設定すればこのように場所も取らず配置することも出来ます。
いかがでしたでしょうか。色設定を変える頻度は個人によって違うでしょうが、上手に使うことで作業のストレスが格段に減ります。今回紹介したマクロはコピーアンドペーストなどでご自由に使って下さって構いません。その際はRGBの値を自由に変えてみて下さいね。