VS Code 用に用意された Forge Extension を利用して、Design Automation API をテストすることが出来ます。
もし、Forge Extension をご存じない場合には、次のブログ記事に目を通してみてください。
Visual Studio Code での Forge 開発
VS Code Forge Extension を使った Viewer ワークフローの確認
VS Code Forge Tools での 3-legged OAuth
ここでは、AppBundle を使わずに、オートデスクが事前に用意した AutoCAD コアエンジン(Design Automation API fot AutoCAD)用の共有 Activity である AutoCAD.PlotToPDF.prod を使って、OSS Bucket 内に用意した DWG ファイルを PDF ファイル化する例をご紹介したいと思います。
- まず、AutoCAD.PlotToPDF.prod Activity の内容(登録されている定義)を見てみます。VS Code の画面左手のアクティビティバーから Forge アイコンを選択して、Forge パネル下(VS Code 画面左下)の DESIGN AUTOMATION ペインから Shared Activities を見つけてクリックします。
- 表示された共有 Activity のリストから AutoCAD.PlotToPDF.prod を見つけたら、マウスの右ボタンをクリックして View Activity Details を選択します。
- AutoCAD.PlotToPDF.prod Activity の詳細が表示されて、その仕様を把握することが出来ます。Parameters セクションを見ると、処理対象の素材ファイルが DWG ファイル(ストレージから get)、成果ファイルが result.pdf の固定名(ストレージへ post)である点、Steeings セクションを見ると、WorkItem が実行する Script が Values 値にある _tilemode 0 -export _pdf _all result.pdf (EXPORT コマンドで全レイアウトを PDF 出力)になっている点が理解出来ます。
- WorkItem が処理する素材ファイルの取得元と成果ファイルの保存先になる Bucket を作成します。BUCKET & DERIVATIVES 右の + アイコンをクリック後、Bucket 名を入力してリターンキーで Bucket を作成します。
- 作成した Bucket に素材ファイルの DWG ファイルをアップロードします。Bucket 名をマウス右ボタンでメニュー表示させたら、Upload Object を選択して、ローカル コンピュータ上の DWG ファイルを指定、アップロードします。
- Workitem が Bucket に保存する成果ファイルの署名付き URL を得るために、中身のない空の PDF ファイルを用意します。 Bucket 名をマウス右ボタンでメニュー表示させてから Create Empty Object を選択して、固定名 result.pdf を入力します。
- AutoCAD.PlotToPDF.prod Activity を使った Workitem を実行します。DESIGN AUTOMATION ペインの Shared Activities の共有 Activity のリストから AutoCAD.PlotToPDF.prod を見つけたら、マウスの右ボタンメニューから Create Workitem をクリックします。
- AutoCAD.PlotToPDF.prod Activity の入出力パラメータにあわせた Workitem ページが表示されます。HostDwg の Value 値に素材ファイルの署名付き URL(Signed URL)を、Result の Value 値に成果ファイル(この Activity では result.pdf)の署名付き URL を、それぞれ指定していきます。
- 作成した Bucket の素材ファイル上をマウス右ボタンでメニュー表示させて、Generate Signed URL を選択します。
- 次の画面が表示されたら、read をクリックします。
- 画面の右下に「Signed URL」通知が表示されるので、[Copy URL to Clipboard] ボタンをクリックして生成された署名付き URL をクリップボードにコピー、HostDwg の Value 値に Ctrl+V のキーボード操作で貼り付けます。
- 同様に、成果ファイル result.pdf の署名付き URL を生成します。result.pdf上をマウス右ボタンで メニュー表示させて、Generate Signed URL を選択します。
- 次の画面が表示されたら、write をクリックします。
- 画面の右下に「Signed URL」通知が表示されるので、[Copy URL to Clipboard] で生成された署名付き URL をクリップボードにコピー、Result の Value 値に貼り付けます。
- Result の Verb(動作)を既定値の Post から Put に変更したら、[Run] ボタンをクリックして Workitem を実行します。
- Workitem の実行が終了すると、画面右下に通知が表示されます。[View Report] ボタンをクリックするとログを表示させることが出来ます。通知は Workitem 実行が失敗した際にも表示されるので、ログの内容を参照して失敗の原因を調べるすることが出来ます。
- Workitem が処理した result.pdf は Download Object でダウンロードすることが出来ます。
- 素材ファイルの全レイアウトを出力した PDF ファイルを確認することが出来ます。
もちろん、独自に Activity や AppBundle を登録したり、それらの Workitem 実行のテスト可能です。JSON ファイルに格納したパラメータ ファイルを Bucket に保存しておけば、署名付き URLを使って Workitem に渡し、テストすることも出来ます。
By Toshiaki Isezaki
コメント