マリオネット解説講座

第6回「メニューコマンドを作成する」

ArchitectLandmarkSpotlightDesigner

マリオネットでオリジナルのメニューコマンドを作成する方法をご紹介します。

マリオネットコマンドは、マリオネットで作成したプログラム(ラッパーノード)をメニューコマンド化する機能です。
マリオネットコマンドに登録することで、他のメニューコマンドと同じような使い勝手でプログラムを実行することができます。

6-1. マリオネットコマンドの登録手順

1. マリオネットでプログラムを作成します。

2. プログラムを右クリックしてコンテキストメニューを開きます

3. 「マリオネットネットワークをラップする…」を選択してラッパーノードに変換します

4. ラッパーノードを右クリックしてコンテキストメニューを開きます

5. 「メニューコマンドに変換…」を選択してマリオネットコマンドに変換します

6. 任意のメニューコマンド名を入力します

7. メニューバー > ツール > マリオネットコマンド を開くと先ほど登録したプログラムが表示されます

8. コマンドを選択して実行します

マリオネットコマンドは、一度登録すれば別のファイルでも実行することができます。また、実行の際に「図面上にノードを配置して選択状態にする」手間がありません。これらの特徴から、ファイルの設定や図形の変換など何度も実行するようなプログラムで真価を発揮します。


6-2. サンプルプログラム

クラス設定の一括編集

すべてのクラスの線の太さを一括で設定するコマンドを作ります。

  すべてのクラスを一つずつ順番に取得する

  1. 「Get Class Count」でクラスが全部でいくつあるのかを調べます。
  2. 「Series」にクラスの数を入力してクラスの番号を作ります。「Series」は始まりの番号・ステップ・カウント数を指定して数列を作るノードです。始まりの数は整数値(int)で「1」を入力します。
  3. 「Get Class List」で番号に応じたクラス名を取得します。

  取得したクラスに対して線の太さを設定する

  1. 「Set Line Weight」にクラスと太さを入力します。

  太さの値をコマンドを実行した時に入力できるようする

  1. 「Real Dialog」ノードは実数値を入力するダイアログを表示します。「Real Dialog」のオブジェクト情報パレットに入力させる値の説明を設定します。ここでは「線の太さ」とします。
  2. デフォルト値を入力することで、ダイアログが開いた時最初にフィールドに入る数値を設定できます。「Real」ノードを使って「20」を入力します。

  作成したプログラムをマリオネットコマンドに登録します

  1. 作成したプログラムをラッピングします。
  2. 「線の太さ一括設定」と名前をつけてマリオネットコマンドに登録します。
  3. マリオネットコマンドに登録された「線の太さ一括設定」を実行します。
  4. 一括設定されたことをオーガナイザで確認してください。


パス図形を手すりに変換する

パスとなる多角形から、手すり状の3Dパス図形を作成するプログラムを作成します。今回のポイントとして「パスとなる多角形はコマンド実行時に選択する」という仕様にします。

  選択状態の図形を取得する

  1. 「Objs by Crit」は「図形選択マクロ」のように条件を設定して、合致する図形を取得するノードです。
  2. 「Objs by Crit」のオブジェクト情報パレットから「Criteria configuration…」ボタンを押して条件設定ダイアログを開きます。
  3. 左のプルダウンで「選択の有無が」、中央のプルダウンで「選択されている」を選択してOKボタンでダイアログを閉じます。

  手すりの断面を作成する

  1. 手すりの断面は円とします。円を作成する「Circle」ノードを配置します。
  2. 「Circle」に円の中心座標(0,0)と円の半径を入力します。
  3. 円の半径は、コマンド実行時に入力するようにしましょう。「Real Dialog」ノードに説明文「断面の半径」を設定して、デフォルト値は15mmを入れます

  3Dパス図形に変換する

  1. 3Dパス図形を作成する「Path Extrude」ノードを配置します。
  2. パスの多角形と断面の円を入力します。

  作成したプログラムをマリオネットコマンドに登録します

  1. 作成したプログラムをラッピングします。
  2. 「手すりに変換」と名前をつけてマリオネットコマンドに登録します。

  選択した多角形に対してコマンドを実行してみましょう

  1. 図面上に多角形を作図して、選択状態にします。
  2. マリオネットコマンドに登録された「手すりに変換」を実行します。
  3. 選択した多角形が手すりに変換されました。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください