共通API: 1つのインターフェース、すべての形式
このデモでは、MCAD SDKの統合されたエントリポイントを示します。同じAPI呼び出しで、異なるCADシステムからのファイルを開き、その構造を一貫して公開します。
複数の形式の読み込み
単一の関数呼び出しで、SOLIDWORKS (.sldprt, .sldasm)、Inventor (.iam)、STEP (.stp)、JT、3DMなど、複数の形式のファイルを順番に開きます。SDKはファイルヘッダーから形式を検出し、適切なネイティブリーダーにリクエストをルーティングし、ソース形式に関係なく統合されたドキュメントオブジェクトを返します。左側の共通データアクセス (CDA) ツリーは、形式に関わらず同一にレンダリングされます。上部にアセンブリ階層、その下に部品とサブ部品が表示されます。
ジオメトリ表現の切り替え
多くのネイティブCAD形式では、1つのファイルに複数のジオメトリ表現が格納されています。例えば、正確なB-Repとテッセレーションメッシュ、または視覚化パフォーマンスのための簡略化された表現などです。SDKはこれらをプライマリ表現と代替表現として公開しており、これらを切り替えることで、ファイルを再解析することなくビューポートが更新されます。これは完全な忠実度を維持するための一部であり、読み込み時にソースファイル内の何も失われることはありません。
PMIビューの切り替え
PMI(製品製造情報)はジオメトリに組み込まれているだけでなく、名前付きビューとして整理されています。各ビューは、特定の向きと、製造または検査ステップに関連する特定のアノテーションセットに対応しています。SDKはこれらのビューを明示的に公開しており、アプリケーションがプログラムで、またはユーザーの選択に応じて、それらを切り替えることができます。
マルチフォーマットからSTEPへの変換
同じ共通APIから、サポートされている任意の形式をSTEPにエクスポートできます。開いているSOLIDWORKS、Inventor、およびJTファイルに対して変換をトリガーすると、それぞれが任意のSTEP互換ツールで使用可能なSTEPファイルを生成します。変換パスはAPI自体に組み込まれており、共通API契約に準拠する任意の形式は、フォーマットごとの変換コードなしで自動的にSTEPエクスポートを取得します。
SOLIDWORKS: 複雑なアセンブリへのアクセス
このデモでは、複雑なタービンアセンブリにおける構造およびメタデータへのアクセスについて説明し、SDKがネイティブのSOLIDWORKSデータをナビゲート可能なアプリケーションモデルにどのようにマッピングするかを示します。
CDAツリーによるアセンブリ階層
3Dモデルをナビゲートすると、左側の共通データアクセス(CDA)ツリーが、すべてのコンポーネント、サブアセンブリ、および個々のファスナーをインデックス化します。各エントリは、SOLIDWORKSデータベース内のコンポーネントインスタンスに対応しており、そのファイル参照、アセンブリ内の位置、および構成リンクが含まれます。数百または数千のコンポーネントを持つ複雑なアセンブリの場合、この構造化されたツリーがカスタムアプリケーションでのナビゲーションを扱いやすくします。
コンポーネントレベルのメタデータ
コンポーネント(例えばリアケーシングなど)を選択すると、基盤となるデータベースから直接そのメタデータが公開されます。これには、ソースファイルパス、ドキュメントタイプ(部品またはサブアセンブリ)、単位系、作成および最終更新タイムスタンプ、カスタムプロパティが含まれます。カスタムプロパティは、ドキュメントの3つのレベル(ドキュメント、コンフィギュレーション、コンポーネント)から読み取られ、統合されたAPIを通じて公開されます。
抑制と表示状態の制御
SOLIDWORKSコンポーネントには、アクティブなコンフィギュレーションに参加するかどうかを制御する抑制状態があります。SDKは、これらの状態を読み取りおよび変更のために公開します。ResolvedとSuppressedを切り替えることで、アプリケーションは検査やシミュレーションのために特定の内部ジオメトリを分離できます。これは、現在SOLIDWORKSで利用可能な書き戻しサポートの一部です。
クリック選択同期
3Dビューで部品を選択すると、CDAツリー内の対応するエントリが強調表示され、その逆も同様です。この双方向バインディングは、視覚的表現と構造的表現を同期させる必要があるあらゆるUI(ビューア、BOMエディタ、検査ツール、コンフィギュレータなど)にとって不可欠です。
ネストされたアセンブリにおける変換精度
深くネストされたサブアセンブリ内でも、SDKは完全な4×4変換行列をエンドツーエンドで保持します。コンポーネントは、元のSOLIDWORKSデータベースが定義したとおりに正確に配置され、階層全体で累積的なずれはありません。これは、幾何学的配置が下流で利用されるあらゆるワークフロー(製造、シミュレーション、衝突検出など)にとって重要です。
Inventor: V10エンジンアセンブリ
このデモでは、Inventor V10エンジンアセンブリをODA Visualizeビューアで開き、サンプルアプリケーションを通じてドキュメントプロパティの抽出を示します。
アセンブリファイル構造
.iam(アセンブリ)ファイルは、複数の.ipt(部品)ファイルや他の.iamサブアセンブリを参照します。SDKはこの参照グラフをたどり、すべてのコンポーネントが解決され配置された完全なツリーを提示します。Inventorはアセンブリに.iamを、部品に.iptを使用します。SDKは、単一の統合ドキュメントモデルを通じて、両方のファイルタイプとその内部参照を処理します。
ドキュメントプロパティ
Inventorは、ファイルメタデータをサマリー情報、デザイン追跡、ユーザー定義の3つのプロパティストリームに保存します。InvDocumentPropertiesサンプルアプリケーションは、SDKを介してこれら3つすべてを読み取り、材料、質量、最終保存者、最終保存日、部品番号、およびユーザーが追加したカスタムプロパティを含む単一のリストで表示します。これらはInventor自身のUIが公開するプロパティと同じであり、SDKはInventorのインストールを必要とせずにファイルから直接読み取ります。
現時点では読み取り専用
SDKでのInventorのサポートは現在読み取り専用です。プロパティの変更、コンポーネント参照の更新、表示状態の変更などの書き戻し機能はロードマップにありますが、まだ出荷されていません。Inventorデータのラウンドトリップ編集が必要なワークフローについては、上記のSOLIDWORKSデモを参照してください。
JT: 可視化とPMI
このデモでは、JTファイルの視覚化とPMIレンダリングを示します。これらは、PLMおよび下流のMBDワークフローでJTを使用するために必要な2つのコア機能です。
JTの視覚化
JT (ISO 14306) は、Siemens TeamcenterのようなPLMシステムで広く使用されている軽量フォーマットです。その主な目的は、大規模アセンブリの高速な視覚化であり、部品はパフォーマンススケーリングのために複数の詳細レベル (LOD) を持つことができます。SDKはJTファイルをロードし、アプリケーションのニーズに基づいて適切なLOD選択を行いながら、デスクトップ、ウェブ、モバイルでODA Visualize SDKを介してレンダリングします。
PMIレンダリング
JTファイルには、寸法、GD&Tフレーム、表面仕上げ、データム参照などのPMI (製品製造情報) が一般的に含まれています。SDKは、ASME Y14.5規格に従ってこのPMIをレンダリングし、適切なシンボルライブラリを使用することで、製造検査官や下流のツールがソースCADシステムが生成したのと同じ注釈を見ることができます。視覚的表現と基盤となるセマンティックデータの両方がAPIを通じてアクセス可能です。
変換: STEP、DWG、共通API
このデモでは、SDKがサポートする3つの変換パスを示します。双方向のSTEP↔DWGと、サポートされている任意のフォーマットからの統一されたCommon API → STEPです。
DWGからSTEPへ
3Dジオメトリを含むDWGファイルをSTEPに変換します。このブリッジは、2Dおよび3DのB-Repジオメトリ、ビュー定義、およびPMIの幾何学的表現を転送します。出力は、STEP互換ツールで利用可能な有効なSTEPファイルです。これは、DWGベースの設計データをSTEPを好むMCADシステムに流し込む際の一般的な要件です。
STEPからDWGへ
逆方向の変換です。B-RepソリッドやPMIを含むSTEPジオメトリがDWGに変換されます。この方向では、PMIはセマンティックなアノテーションとしてではなく、線、円弧、テキストといった幾何学的表現として転送されることに注意してください。DWGにはSTEPのセマンティックGD&Tモデルに相当するネイティブな機能がないため、これはラウンドトリップワークフローにおける既知の制約となります。
STEPへの共通API — マルチフォーマット
サポートされているMCADフォーマットはすべて、同じ共通APIを介してSTEPにエクスポートできます。SOLIDWORKS、Inventor、JT、その他の開いているファイルを順次変換し、アプリケーション側でフォーマットごとの変換コードを必要とせずに、それぞれが有効なSTEP出力を生成します。これは普遍的なパイプラインです。共通APIを一度統合するだけで、SDKに含まれるすべてのフォーマットのSTEPエクスポートが可能になります。