機械系CADのカスタム化紹介

始めてみました。

A3-1:サンプルプログラムの実行

 Fusion360に用意されているアドイン用のサンプルプログラム(NewAddIn1)を実行します。

 1、「スクリプトとアドイン」窓を開く

 2、サンプルプログラムの作成

 3、「NewAddIn1」の実行

 4、アドインを停止させる

 5、起動時に自動的に実行させる

 

1、「スクリプトとアドイン」窓を開く

Fusion360の左上にある作業スペースを「デザイン」にします。

ツールバーの「ユーティリティ」タブを選択します。

③ 「スクリプトとアドイン」のアイコンをクリックします。

2、サンプルプログラムの作成

① 「スクリプトとアドイン」窓の「アドイン」タブを開いて、「作成」をクリックします。

  

②「スクリプトまたはアドインを新規作成」窓が開くので、各項目に入力し、最後に「作成」をクリックします。

  

ア、新規作成:「アドイン」を選択
イ、プログラミング言語:「Python」を選択
ウ、スクリプト名またはアドイン名:「NewAddIN1」(半角英数字でコマンド名を記入)
エ、説明:「初めまして」(プログラムの説明を記入。全角半角使用可能。未記入でも可)
オ、作成者:「名前」(プログラムの作成者名を記入。全角半角使用可能。未記入でも可)
カ、バージョン:「1.0」を記入。(版数を記載)
キ、ターゲットのオペレーティングシステム:「Windows および Mac」のまま。
ク、フォルダの場所:プログラムを保存したい場所になっているか確認します。

③ 「スクリプトとアドイン」窓にプログラム名変更可能状態で戻るので、変更せずに「Enter」キーを押します。
「マイアドイン」に表示された「NewAddIn1」を選択すると、「説明」、「作成者」、「バージョン」に②で入力した内容、「絶対パス」にプログラムの保管場所が表示されます。

    ⇒   

3、「NewAddIn1」の実行

① 「スクリプトとアドイン」窓の「アドイン」タブを開いて、「NewAddIn1」を選択し、「実行」をクリックすると、

ツールバーの「アドイン」の部分に「Command Dialog Sample」のアイコンが増えます。
・「アドイン」のメニューに「Send to Palette」,「Show My Palette」,「Command Dialog Sample」のアイコンが増えます。

  

② 「Send to Palette」のアイコンをクリックします。

③ 「SEND TO PALETTE」窓が表示されます。

 ・「OK」または「キャンセル」をクリックして窓を閉じます。

    

④ 「Show My Palette」のアイコンをクリックします。

⑤ 「MY PALETTE SAMPLE」窓が表示されます。

 ・「閉じる」をクリックして窓を閉じます。

    

ツールバーまたは「アドイン」のメニュー内の「Command Dialog Sample」のアイコンをクリックします。

⑦「COMMAND DIALOG SAMPLE」窓が表示されます。

・「OK」をクリックするとMessageboxが表示されます。Messageboxの「OK」をクリックして窓を閉じます。
・「キャンセル」をクリックして窓を閉じます。

   OKをクリック⇒ 

 

 備考:各窓の入力欄をいじって「OK」等が操作出来なくなった場合は、

①ビューポートの空いている場所でマウス右クリックします。

②表示されたメニューから「キャンセル」を選択します。

  

③各窓を閉じます。

 

4、アドインを停止させる

①「スクリプトとアドイン」窓の「アドイン」タブを開きます。

②「NewAddIN1」を選択してから「停止」をクリックします。「NewAddIN1」が停止してツールバーが初期状態に戻ります。

  

5、起動時に自動的に実行させる

①「スクリプトとアドイン」窓の「アドイン」タブを開いて、「NewAddIN1」を選択します。

②「起動時に実行」にチェックを入れてから、右上の「×」で窓をとじます。

Fusion360を再起動すると、「NewAddIN1」が自動的に実行されます。

  

④起動時での実行を止めたい場合は、②で入れたチェックを外します。

 

 

この項目は終了です。






A2-5:エラー表示

 Fusion360スクリプト用サンプルプログラムで実施しているエラー表示方法の説明です。
 1、サンプルプログラムの準備
 2、エラー表示方法
  2-1、コマンドの使用方法
  2-2、動作の確認

 

1、サンプルプログラムの準備

① 「A2-1」の2を参照して新しく 'NewScript2' という名称のスクリプトを作成します。(「説明」、「作成者」の記入は不要です)

 

2、エラー表示方法

 pythonの「traceback」コマンドを使用して、エラー内容をmessageBoxで表示させます。

 2-1、コマンドの使用方法

    

① import文でtracebackモジュールを読み込みます。

② try,exceptを使用して、例外処理(エラー)の準備をします。

③ エラーが発生したときに、messageBoxでtracebackコマンドからの戻り値(エラーの内容)を表示させます。

 2-2、動作の確認

 故意にエラーを発生させて動作を確認します。

①「NewScript2.py」をVisual Studio Codeで開きます。

② 11行目を存在しないコマンド名に変更します。

 

  変更前:ui.messageBox('Hello script')
       ⇓
 変更後:ui.messageBox1('Hello script')

③ 変更内容を「保存」します。

④「NewScript2」を実行します。

⑤ 以下のようなエラーが表示されたら正常動作です。「OK」ボタンでmessageBoxを閉じます。

 



この項目は終了です。






A2-4:スクリプトの作成見本②

 サンプルプログラムを流用して、MessageBoxの仕様を体験できるスクリプトを作成します。
 2、プログラムの作成
  2-1、仕様
  2-2、作成
  2-3、動作確認
  2-4、資料

 

2、プログラムの作成

 2-1、仕様

 MessageBoxの表示オプションの種類、ボタンをクリックしたときの返り値が理解できるようにする。押しボタン、枠のアイコンの種類(共に5種類)を順番に表示させ、押したボタンの返り値を表示させる。
 エラーを発生させることができないので、エラー処理は省きます。

  

 2-2、作成

 ① 「スクリプトとアドイン」の窓を開きます。「スクリプト」タブにある「MessageBox_1」を選択して、「編集」をクリックします。

 ② 「MessageBox_1.py」が開いたら、11行目を削除します。

 

 ② 削除した場所に以下の7行(空の行あり)をコピーペーストします。

          text_1 = ['OKButtonType', 'OKCancelButtonType', 'RetryCancelButtonType', 'YesNoButtonType', 'YesNoCancelButtonType']
        text_2 = ['NoIconIconType', 'QuestionIconType', 'InformationIconType', 'WarningIconType', 'CriticalIconType']
        text_3 = ['『Error』', '『OK』', '『キャンセル』', '『再試行』か『はい』', '『いいえ』']
        
        for num in range(5):
            num_1 = ui.messageBox('MessageBoxButtonTypesは、「' + text_1[num] + '」\n MessageBoxIconTypesは、「' + text_2[num] + '」', '設定値は ' + str(num) + ' です', num, num)
            ui.messageBox(text_3[num_1 + 1] + 'を押した', '返り値は ' + str(num_1) + ' です')

 ④ 11~15行目の先頭の文字が10行目の先頭と並ぶように、半角スペース追加、または削除で調整します。16,17行目は15行目から半角スペース4ケ分の段差をつけます。

 

 ⑤ VisualStudioCodeの左上「ファイル」→「保存」で変更内容を保存します。

 2-3、動作確認

 ① 「スクリプトとアドイン」の窓を開きます。「スクリプト」タブにある「MessageBox_1」を選択して、「▶実行」をクリックします。

 ② MessageBoxが「設定値は0です」から「設定値は4です」まで「返り値」を表示しながら動作することを確認します。

 

 表示サンプル(返り値は押したボタンで変わります)

     ⇓
  
     ⇓

     ⇓
  
     ⇓

     ⇓
  
     ⇓

     ⇓
  
     ⇓

     ⇓
  
     ⇓
    終わり

 

2-4、資料

ヘルプに記載されている情報です。

関連するHelp

コマンド名 説明
MessageBox コマンド文構成
DialogResults ボタン操作後の返り値
MessageBoxButtonTypes 表示するボタン・オプション
MessageBoxIconTypes 枠に表示するアイコン・オプション

 

押しボタンの種類と返り値

タイプ 設定値 表示されるボタン 返り値
OKButtonType 0 OK 0
OKCancelButtonType 1 OK 0
キャンセル 1
RetryCancelButtonType 2 再試行 2
キャンセル 1
YesNoButtonType 3 はい 2
いいえ 3
YesNoCancelButtonType 4 はい 2
いいえ 3
キャンセル 1
エラー発生時 -1

 

アイコンの種類

タイプ 設定値 メッセージ内容
NoIconIconType 0 アイコンを使用しない
QuestionIconType 1 質問がある
InformationIconType 2 情報を表示する
WarningIconType 3 警告する
CriticalIconType 4 重大な問題がある


あたらしいスクリプトを作成することができました。

この項目は終了です。






A2-4:スクリプトの作成見本③

 サンプルプログラムを流用して、MessageBoxの仕様を体験するスクリプトを作成します。
 3、「詳細」の内容変更

 

3、「詳細」の内容変更

 「スクリプトとアドイン」窓の「詳細」で表示されるスクリプトの説明を変更します。

① 「スクリプトとアドイン」の窓を開いて、「MessageBox_1」を選択し、「編集」をクリックします。

 

② 「Visual Studio Code」が開くので、左の「エクスプローラー」欄から「MessageBox_1.manifest」をクリックします。

 

③ 以下の2カ所を変更します。動作が不安定になる可能性があるので、それ以外は変更しないでください。

 4行目 "名前" ⇒ "ワタシ"
6行目 "初めまして" ⇒ "メッセージボックスのオプションが確認できます。"

 

3、「詳細」変更の確認

① 「スクリプトとアドイン」の窓で記憶されている情報を削除するために、以下のどちらかを実行します。

Fusion360を再起動します。

・「MessageBox_1」のフォルダ名を「MessageBox_2」等に変更してから、「スクリプトとアドイン」の窓を開き、「MessageBox_1」が「スクリプト」のリストに無いことを確認します。その後、変更したフォルダ名を「MessageBox_1」に戻します。

② 再度「スクリプトとアドイン」の窓を開いて、「MessageBox_1」を選択し、「詳細」をクリックします。

③ 「詳細」の内容が変更できたことを確認します。



サンプルプログラムを利用したスクリプト作成は終了です。






A2-4:スクリプトの作成見本①

 サンプルプログラムを流用して、MessageBoxの仕様を体験できるスクリプトを作成します。
 1、サンプルプログラムのコピー

 

1、サンプルプログラムのコピー

  「A2-3」で作成したスクリプトを別名でコピーします。

エクスプローラで「スクリプトおよびアドインの既定パス」のフォルダに移動します。

② 「Scripts」フォルダに移動して、「NewScript1」のフォルダを「MessageBox_1」の名前でコピーします。

  

③ 「MessageBox_1」フォルダの下にある
 ・「NewScript1.manifest」を「MessageBox_1.manifest」に
 ・「NewScript1.py」を「MessageBox_1.py」に
 名前を変えます。

スクリプトおよびアドインの既定パス」の「Scripts」フォルダの下にある
スクリプトのフォルダ名
・そのフォルダの中にある「*.manifest」
・そのフォルダの中にある「*.py」
を同じ名前にすると、「スクリプトとアドイン」の窓のリストにスクリプト名が自動的に追加されます。

   
               ⇓
  

④ 「スクリプトとアドイン」の窓を開きます。「スクリプト」タブにある「MessageBox_1」を選択し、「実行」をクリックします。

   

⑤ 「2-3」で作成した「こんにちは」のMessageBoxが表示されます。

  


サンプルプログラムを別名でコピーすることができました。

この項目は終了です。






A2-3:プログラムの変更

 プログラムを変更する体験として、MessageBoxで表示する文言や「詳細」の登録内容を変更します。

 1、VisualStudioCodeのインストール

 2、MessageBoxのプログラム変更

 3、文面変更の確認

 4、「詳細」の変更

 5、「詳細」の変更確認

 

1、VisualStudioCodeのインストール

 既にVisualStudioCodeをインストールしている場合、またはインストールせずに他のテキストエディタで編集を行う場合は、2に進んで下さい。

① 「スクリプトとアドイン」窓からA2-1で作成したスクリプト('NewScript1')を選んで「編集」をクリックします。

  

② 「Visual Studio Codeをダウンロード」窓が開くので、「OK」をクリックします。自動的にダウンロード、インストールが行われます。

 ⇒ 

③ 「スクリプトとアドイン」窓が閉じた状態でインストールが終了します。

2、MessageBoxのプログラム変更

VisualStudioCodeを使用しない場合:
エクスプローラスクリプトを保管しているフォルダに移動し、文字コードUTF-8で読み書きする設定にしたテキストエディタで、プログラムファイル('NewScript1.py')を開き、④からの作業を実施してください。

 

① 「スクリプトとアドイン」窓からスクリプト('NewScript1')を選択して「編集」をクリックします。

② 「このフォルダー内のファイルの作成者を信頼しますか?」窓が表示されので、

ア、「親フォルダ―'Scripts'内の全てのファイルの作成者を信頼します」にチェックを入れます。

イ、「はい、作成者を信頼します」をクリックします。

 

 (アでチェックを入れないと、他のスクリプトを編集する度にこの窓が表示されます)

③ VisualStudioCodeの編集画面が開くので、左のリストからプログラムファイル('NewScript1.py')を選択します。

 

④ 11行目の「'Hello script'」を「'こんにちは'」に変更します。

  

            ⇓

  

⑤ 左上の「ファイル」メニューから「保存」を選択して、上書き保存します。

  

3、文面変更の確認

① 「スクリプトとアドイン」窓を開きます。

スクリプト('NewScript1')を選択して「▶実行」をクリックします。

③ MessageBoxの記述が変わったことを確認します。

  

4、「詳細」の変更

 ① 環境設定ファイル('NewScript1.manifest')をテキストエディタで開きます。(以降、VisualStudioCodeもテキストエディタの一種とした説明にします)

 ② 以下の2カ所を変更、2行追加します。動作が不安定になる可能性があるのでそれ以外は変更しないでください。

4行目 「"名前"」 を 「"なまえ"」

6行目 "初めまして" を "こんにちは。7行目、8行目にそれぞれ、よろしく8行目 おねがいします"

  

               ⇓

  

5、「詳細」の変更確認

 ① 「スクリプトとアドイン」窓の「詳細」をクリックします。

  

 ② 「説明」、「作成者」の変更が反映されていることを確認します。

  

 

この項目は終了です。






A2-2:プログラムの保管場所

作成したプログラムの保管場所を確認します。

エクスプローラで、「A1-2」の2-2で設定した「スクリプトおよびアドインの既定パス」に移動します。

  

② 「Scripts」フォルダに移動すると「A2-1」の1-2で作成したスクリプト名('NewScript1')のフォルダがあり、

  

 その中にプログラムや環境設定のファイルが入っています。

  

 ・「.vscode」:Fusion360がプログラムを実行する際に必要な情報を保管しています。
・「スクリプト名.manifest」:スクリプト作成時に入力した「説明」等の情報を保管しています。
・「スクリプト名.py」:実行するプログラムを保管しています。
・「Visual Studio Code」でプログラムの編集を行うと、「.enb」ファイル等の「Visual Studio Code」用設定ファイルが追加されます。

 

この項目は終了です。