VS Code 用に用意された APS Extension(旧 Forge Extension)を利用して、Design Automation API をテストすることが出来ます。
もし、APS Extension(旧 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 に変更したら、 2つのパラメーターにチェックして、[Create] ボタンをクリックして WorkItem を実行します。
- WorkItem の実行が終了すると、画面右下に通知が表示されます。[View Report] ボタンをクリックするとログを表示させることが出来ます。通知は WorkItem 実行が失敗した際にも表示されるので、ログの内容を参照して失敗の原因を調べるすることが出来ます。
- Workitem が処理した result.pdf は Download Object でダウンロードすることが出来ます。
- 素材ファイルの全レイアウトを出力した PDF ファイルを確認することが出来ます。
もちろん、独自に Activity や AppBundle を登録したり、それらの Workitem 実行のテスト可能です。JSON ファイルに格納したパラメータ ファイルを Bucket に保存しておけば、署名付き URLを使って Workitem に渡し、テストすることも出来ます。
By Toshiaki Isezaki
コメント
コメントフィードを購読すればディスカッションを追いかけることができます。