Category: Technology-Perspective-From-Japan
-
雑学:Design Automation for Fusionでカスタム処理を記述する言語 TypeScriptとは
ブログ記事「Design Automation API for Fusion : 一般リリース」でご案内いたしましたが、Design Automation for Fusionが一般リリースとなっております。 デスクトップ版のFusionではAPIを用いたカスタムスクリプト、アドインの開発ではC++またはPythonをご利用いただけますが、Design Automation for Fusionでのカスタム処理はTypeScriptコードのみをサポートしています。デスクトップ版Fusionのカスタムスクリプトやアドイン開発に利用していたPythonまたはC++は利用することが出来ません。 TypeScriptはMicrosoft社が開発したJavaScriptを拡張して作られた言語となりますが、Web開発のご経験がない方にはあまりなじみがないかもしれませんので、このブログ記事では簡単にJavaScriptの歴史とTypeScriptについて解説をしたいと思います。 JavaScriptとは JavaScriptはブラウザ上で動作する動的なWebページの表示を制御する言語となります。JavaScriptが登場した時代はMicrosoft社やNetscape社がブラウザの覇権争いをしている真っ只中の時代であったこともあり、言語仕様の統一も不十分で動作するブラウザの独自色が強いものでした(Microsoft社のInternet ExploreではJavaScriptに準拠したJScriptと呼ばれる言語となっていました)。 異なるブラウザのみならず、同じブラウザの間でもバージョン間での差異がある場合もあり、複数のブラウザに対応するためには各ブラウザ向けに処理を記述するといった対処が必要となるため、開発・メンテナンスに非常に手間がかかることから大規模な開発をすることは推奨されておらず、Webページの一部分の表示を変える、といったような限定的な使われ方をしておりました。 当時を知る方の中には、大規模な動的WebページにはAdobe社製のFlashが使われていたことを記憶している方も多いかと思います。 Ajaxの登場による爆発的な普及 そんなJavaScriptの状況が変わったのは、その誕生から10年ほど経ちJavaScriptとXMLを用いてサーバと非同期通信を行い、HTMLのページ遷移を伴わない動的なページ書き換えを行うAjax(Asynchronous JavaScript And XML)技法の登場によるものでした。 当時のWebページは(Adobe社製のFlash等を用いたものを除き)、基本的にはページ遷移をしながら動作する紙芝居の様な形式となっていました。このためユーザの入力に応じた細やかな動作を実現することが難しく、デスクトップアプリケーションと比較するとユーザエクスペリエンスの面で非常に不満が残るものが大多数を占めておりました。 ところがAjax技法の登場によりHTMLを使ったWebアプリケーションのユーザエクスペリエンス改善への道が開け、そこで使われるJavaScriptは大きな注目を集め爆発的に利用が拡大していくことになります。 JavaScriptの需要が高まるにつれブラウザ間の動作の差異を吸収するようなprototype.jsやJQuery等のオープンソースライブラリが登場、さらに利用が拡大しくこととなります。 JavaScriptのライブラリ・フレームワークはその後も発展続けておりReact、Veu、Angular等の多種多様なフレームワークが開発され利用され続けています。 サーバサイド・クライアントサイドでのJavaScriptの利用 ここまでの説明でもお判りかと思いますが、元々JavaScriptはブラウザ上で動作する言語として開発がされておりました。 ところが、JavaScriptの利用者の増加に伴いブラウザの外でJavaScriptを動作させるという需要が出てきました。特に、当時主流だったApache HTTP ServerなどのWebサーバは同時接続が1万を超えるような要求が発生した場合リクエストが受け付けられなくなるという、所謂10k問題を抱えており、これに対応できるWebサーバが求められておりました。 このような大規模リクエストにも対処が可能なWebサーバを実装することを目標の一つに掲げ、Node.jsというJavaScriptをブラウザ外で利用してWebサーバを構築できるモジュール(正確には、JavaScriptの実行環境)が開発されました。 このNode.jsを用いることによって、JavaScriptを用いてWebサーバを開発することができるようになったのですが、このNode.jsはWebサーバ用途以外にもクライアントで処理を実行するといった事にも利用することが出来るため、クライアントサイドでJavaScriptを動作させる様々なライブラリが開発・整備され活用されていき、JavaScriptの利用はますます広がっていきます。 JavaScriptの弱点を補うTypeScript この様に、JavaScriptが大規模な開発で利用されるようになると、次第に(関係者の間では当初から言われていた事ではありますが)その弱点が明らかになっていきます。ブラウザで小規模な動的ページ実現するようなコードを記述する場合にはあまり大きな問題にはなりませんが、サーバサイドで大規模なコードを書こうとすると、型システムが不在(≒コンパイラによる静的なチェックが出来ない)、Javaの様なクラス指向のオブジェクトではなくプロトタイプベースのオブジェクト指向が馴染みにくい、モジュール化機能が無い、といったような弱点が浮き彫りになってきます。 特に型システムの不在はコードが実行されるまで型不整合によるエラーが分からないため、常に実行時エラーの恐怖に悩まされることとなります。 JavaScriptの利用拡大と大規模な開発に対応するべく業界では様々なアプローチ対策が考えられましたが、そのうちの一つがMicrosoft社が開発したJavaScriptを拡張して作られた言語であるTypeScriptとなります。 ※なおJavaScript自身も機能拡張が行われており、ECMAScript 2015(ES6)にてモジュールやクラスへの対応が行われております。 まとめ 今回の記事では、Design Automation for Fusionのカスタム処理の開発で使用するTypeScriptについて、その元となっているJavaScriptの歴史を振り返りました。 現在でもTypeScriptはWebアプリケーション、クライアントサイド、サーバサイドの開発でも広く利用されている言語で、JavaScriptの知識があれば記述が容易であるため比較的学習コストが緩やかな言語となります。 Design Automation for…
-
Autodesk DevCon 東京 2025 開催のご案内
5 月開催の Autodesk DevCon Europe(アムステルダム) を受けて、昨年に続き、日本でも DevCon 東京を開催いたします。 2016年の Autodesk Forge の登場以来、Design & Make の世界を変革してきた Autodesk Platform Services(APS)について、AI、デジタル トランスフォーメーション(DX)、サスティナビリティ(持続可能性)のテーマに沿って、その一翼を担うプラットフォーム、API の取り組みを日本語でご案内します。 今回は、オートデスク社員によるテクニカル セッションだけではなく、さまざまな経験をお持ちの日本の APS 認定パートナーによるソリューション開発事例もご紹介いただくことにしています。お客様の課題と APS での解決手法、APS ソリューションによって得られた効果をご紹介いただきます。技術的な論点ではなく、APS によって解決された具体例として、多くの方に利点を把握いただけるはずです。 すでに APS(旧 Forge)をお使いいただいている方、これから開発や APS 利用を検討されている方など、幅広い方にご参加いただくことが出来ます。下記に開催概要、内容と募集要項をご案内いたしますので、ぜひお申込みいただければと思います。 日時/場所: 東京 7月17日(木)10:30~17:25 東京都港区虎ノ門1-23-3 虎ノ門ヒルズ森タワー 虎ノ門ヒルズフォーラム 4階 参加費: 無料(事前登録制) アジェンダ(時間割): イベントへの参加ご登録は、次のリンクで受け付けていますので、ぜひ、参加をご検討ください。 DevCon 東京お申込み ※ 本イベントは、事前登録制になっておりますので、必ず、上記リンクよりお申込みをお願いいたします。 By Toshiaki Isezaki
-
APS OpenAPI 仕様を Postman で利用
OpenAPI 仕様をオープンソース化 により、開発者が API を探索して統合することがこれまで以上に簡単になっています。今回は、これらの仕様を活用するための実用的な方法、特に Postman でそれらを使用する方法をフォローアップしてみたいと思います。 過去に Postmanで REST API のテストした経験をお持ち場合には、エンドポイント毎に Postman コレクションを作成する手作業が必要であることをご存じと思います。ただし、API が進化して連続して複数のエンドポイントを使するようになると、コレクションの作成に時間がかかり、エラーを招きやすくなる傾向があります。 OpenAPI 仕様が公開されるようになったことで、そのような苦労はもう必要ありません。Postman に直接インポートして、(ほぼ))即座に使用できるリクエストの完全なコレクションを即座に生成できます。エンドポイントのテスト、ワークフローの構築、利用可能な運用の探索など、Postmanはプラットフォームの機能へのワンクリック ゲートウェイになります。 利用方法(Postman がインストールされている前提) 認証・認可 本ブログ記事執筆時点で、OpenAPI 仕様のインポートが自動設定されないのは認証/認可のフローです。Postman リクエストの認証を設定するにはさまざまな方法がありますが、最も汎用的なのはコレクション内のリクエストの使用方法に応じて、2-legged または 3-legged OAuth 認証フローを使用した Postman コレクションの設定です。 Environment(環境) APS の Client ID や Client Secret のクレデンシャル情報を Postman の Environment – 環境 に保存すると、Postman の標準的な使用でユーザー インターフェイスに値が公開(表示)されることはなく、また、同じリクエストを異なる環境(異なる APS アプリなど)で簡単に再利用することが出来るようになります。新しい環境で Client ID と Client Secret を指定する手順は次のとおりです。 2-legged…
-
Desing Automation for Fusion コンフィギュレーター サンプルアプリケーション
先のブログ記事「Design Automation API for Fusion : 一般リリース」でご案内しましたようにDesing Automation for Fusionが一般リリースとなっております。 Desing Automation for Fusionを活用したサンプルアプリケーションとして、コンフィギュレーター サンプルアプリケーション が公開されております。:https://fusion-config-demo.autodesk.io/ 非常に単純なサンプルアプリケーションですが、Design Automation for Fusion の機能を理解するのに十分な機能を有しております。 Design Automation for Fusionのデモアプリケーションでは、Design Automation for Fusionのコアエンジンが、クラウド上に保存されているFusionモデルにアクセスするために、自身のAutodesk Accountでログインの上、パーソナルアクセストークン(PAT、 Personal Access Toke)を、アプリケーションの右上のボックスに入力して指定する必要があります。 PATは、https://profile.autodesk.com/security にアクセスし、パーソナル アクセス トークン(Personal Access Token、PAT )を生成して利用することが出来ます。このデモアプリケーションで利用する場合、パーソナル アクセス トークンの生成時のProduct Scopeに「Desing Automation for Fusion」を指定してPATを生成する必要があります。 なお、生成したパーソナル アクセス トークンは作成時に表示されますが、その後は参照をすることが出来ないことにご留意ください。 このサンプルは、ハブとプロジェクトおよび保存されているデザインへのアクセスを提供する Hubs Browser チュートリアルに基づいています。 Hubs Browserチュートリアルについては、先日行いましたオンライントレーニングAPS…
-
Autodesk Informed Design API パブリック ベータ
昨年導入された Autodesk Informed Design に新たにパブリック ベータ版の API が登場、Autodesk Platform Services(APS)の一部として利用可能になりました。 Autodesk Informed Design とは? Autodesk Informed Design は、設計プロセスの早い段階で詳細な建物コンポーネント情報を利用出来るようにすることで、製品メーカーと建築設計者を結びつけます。建築設計者は、製造可能性に対処するために建設段階や製造段階まで待つのではなく、モデリング中に寸法、コンフィギュレーション ルール、材料などの製品データを直接操作出来るようになります。 中核製品として使用する Inventor と Revit に専用のアドイン アプリを介在させ、両製品の設計データをプロジェクト単位で管理する Web アプリと併用することで、設計の確実性の向上、手戻りの低減、メーカーが定義した仕様と制約に準拠していることを確認することで、構成コンポーネントの正当性をチェック、製造中の再設計のリスクが軽減されます。 Autodesk Informed Design を使用すると、次の点を実現することが出来るようになります。 Autodesk Informed Design の概要については、次のデモ動画をご確認ください。 Autodesk Informed Design API の紹介 Autodesk Informed Design API は、Informed Design の機能をクラウドに拡張し、開発者が製品設計および製造データの読み取り、書き込み、拡張をおこなえるようにします。これにより、パートナー、アプリ開発者、およびエンドユーザーが、オートデスク製デザイン ソフトウェアと直接統合するカスタム ワークフローを構築することが出来ます。 Informed Design API で何ができるのか? Informed Design…
-
Design Automation API for Fusion : 一般リリース
2025年2月にDesign Automation for Fusion APIのベータプログラムを開始し、イノベーションパートナーやアーリーアダプターの皆様がこの新しいAPIを使用してどのような成果を上げてきたのかを目の当たりにするのは、本当に刺激的なことでした。この度、Design Automation for Fusion APIが一般リリースとなりました。 Design Automation API for Fusionとは? Autodesk Design Automation APIは、AutoCAD、Revit、Inventor、3ds Max、そして新たにFusionのエンジンを従量課金制のクラウドサービスとして提供します。Design Automation APIにはFusion Scripting APIが新たに含まれ、設計および製造プロセス全体をカバーします。従来Fusionデスクトップクライアントでスクリプト化していたタスクを、ユーザーによる操作を必要とせずにクラウド上で大規模に実行できるようになります。完全にクラウド向けに構築されているため、Design Automation APIは既存のビジネスシステムやプロセスとシームレスに統合が可能です。これにより、プロセスを加速し柔軟性を向上させ、新たなビジネスチャンスを生み出す、包括的なエンドツーエンドのワークフローが実現します。 Design Automation for Fusion API を使用たアプリケーション Design Customisation 設計のキーパラメータを公開することで、製品のカスタマイズが容易になります。FusionコンフィギュレータのデモアプリケーションによりFusion Teamハブに保存した設計パラメータを設定し、プロジェクトやプロセスにどのように組み込むかをご確認ください。このコンフィギュレータのソースコードと使い方の説明は、APS公式GitHubページで公開しています。 Milling Automation – Toolpath.com Fusionとの統合を強化し、アプリケーションやサービスとFusion間のデータ転送をこれまで以上に容易にします。Toolpath.comのウィザードは、同社のプラットフォームとFusionのシームレスな統合を実現し、パーツのプログラミングを高速化・自動化します。toolpath.comでぜひお試しください! 産業用3Dプリンティング 製造プロセスにおける反復的、標準化された、あるいは時間のかかるタスクを自動化しましょう。Design Automation APIは、業界をリードするTrueShape packerをはじめとするFusionの高度な製造アルゴリズムを提供します。他の製造業における事例も今後ご紹介していきますので、ご期待ください。 価格 Design Automation for Fusion APIは、処理時間1時間あたり3.0…
-
APS Online Training:Hub Browser 収録公開
2025年5月21日に、Learn APS Tutorial の Hub Browser を題材に、オンラインでトレーニングを開催しました。当日は、コードの説明を中心に、Autodesk のクラウドベースのアプリケーション(Autodesk Docs, BIM 360 Docs、Fusion Team) のストレージに保存されたユーザーのコンテンツにアクセスし、APS Viewer で表示するワークフローを把握していただきました。Web サーバー実装には、Node.js と APS SDK、クライアント実装に APS Viewer を使ってアプリを構築する過程をご案内しています。 前提 プレゼンテーション資料 当日使用したプレゼンテーション資料(PDF ファイル)は、次のリンクからダウンロードすることが出来ます。 収録動画 2025年12月8日からアプリの作成と管理にデベロッパーハブ(開発者ハブ)が必要です。詳細は、【重要】APS 新ビジネスモデル導入のオファリング をご確認ください。 By Toshiaki Isezaki
-
Design Automation for Inventor 2026 コアエンジンは.NET 8版のみとなります
Design Automation for Inventor Release Notesでもご案内しておりますが、Desing Automation for InventorでInventor 2026に対応したコアエンジンが公開されております。 ブログ記事「Design Automation for Inventor 2025 .NET8のサポートを開始しました」でもご案内しましたようにInventor 2025 では、.NET Framework対応のコアエンジンであるAutodesk.Inventor.2025と、.NET 8対応のコアエンジンであるAutodesk.Inventor.2025_Net8の2種類のコアエンジンがありました。 一方でInventor 2026のコアエンジンでは、.NET 8対応のコアエンジンAutodesk.Inventor.2026のみとなります。Inventor 2025の場合は.NET 8 対応のコアエンジンが後から追加されたため、コアエンジン名に”_Net8”が付加されておりますが、Inventor 2026では.NET 8対応のコアエンジンのみとなるため、コアエンジン名に”_Net8”が付加されていない点にご留意ください。 By Takehiro Kato
-
Design Automation API: サポート エンジン一覧の取得
Design Automation API でアドイン実行に使用するコアエンジンは、Design Automation API:コアエンジン ライフサイクル ポリシー に基づき、対応するデスクトップ製品の新バージョン リリースに同期して、毎年、利用可能なコアエンジン バージョンが変化します。 利用出来るコアエンジン バージョンは、GET engines エンドポイントで照会することが可能ですが、コアエンジンの増加によって注意すべき点があります。具体的には、現在、GET engines エンドポイントの一度の呼び出しは、利用可能なすべてのコアエンジン バージョンが返されない状態になっています。 例えば、POST token エンドポイントで得た 2-legged アクセストークンを指定して、Postman で GET engines エンドポイントを呼び出すと、 次のようになります。 レスポンス ステータスが 200 OK(正常終了)を示しているにもかかわらず、data フィールドで返される配列内のコアエンジン名は、あきらかに少ないように見えます。 このように、エンドポイント呼び出しのレスポンスサイズが大きくなると、システム全体のパフォーマンス低下につながってしまうため、最大数が制限されるものがあります。通常、そのようなエンドポイントには pagination 機能 が用意されていて、複数回に渡る呼び出しで全件データを得られるようになっています。 GET engines エンドポイントの場合、初回呼出しで得られたレスポンス JSON に “paginationToken” フィールド値が設定されていることで、pagination 機能 が適用されて複数ページでレスポンスが得られる、つまり、以降の呼び出しで残りのコアエンジン名が返されることがわかります。GET engines エンドポイントのリファレンスには、次のようにクエリー パラメータでページ指定出来ることが説明されています。 そこで、https://developer.api.autodesk.com/da/us-east/v3/engines?page=3eyJOYW1lX2xhYmVsIjp7IlMiOiJJbnZlbnRvci4yMDIxIn0sIlJlY2VpdmVyIjp7IlMiOiJldmVyeW9uZSJ9LCJPd25lciI6eyJTIjoiQXV0b2Rlc2sifX0%3D のように、”page” クエリー パラメータに初回に返された “paginationToken” フィールド値を指定して GET…
-
Revit 2026 API アップデート
今回は Revit 2026 API のアップデートについて、ご案内いたします。 Revit 2026 SDK Revit API リファレンスや Visual Studio プロジェクトの完全なサンプルコードは、Revit .NET SDK に同梱されています。 下記のページから、2026 バージョンの Revit .NET SDK をダウンロードしてご利用ください。 Revit 2026 API 開発者用ガイド Revit 2026 API の解説は、下記の「 Revit API 開発者用ガイド」にてご参照いただけます。全てを網羅しているわけではありませんが、スニペットが多数掲載されておりますので、API の利用方法を把握いただく際に役立ちます。 Revit 2026 API 新機能と変更点 詳細につきましては、SDK に同梱されている「Revit Platform API Changes and Additions.docx」、または、RevitAPI.chm 内の「Major changes and renovations to the Revit API」セクションをご参照ください。 下記、Revit…

You must be logged in to post a comment.