ODA SDKにおけるDWF形式のサポートは、DWF Toolkitの最新バージョン7.7に基づいています。
ツールキットのソースコードはThirdParty/DWFToolkit-7.7フォルダーにあり、他のサードパーティコンポーネントと同様に、多くのプラットフォーム向けにビルドされています。ビルド結果は次のとおりです。
- exe および bin フォルダー内の DwfToolkit.dll / .so および DwfCore.dll / .so。
- lib フォルダー内の DwfToolkit.lib / .a および DwfCore.lib / .a。
この記事では、主に3つのツールキットベースのサポートモジュールについて説明します。
- TD_Dwf7Export.tx
- TD_Dwf7Import.tx
- TD_DwfDb.tx
TD_Dwf7Export.tx モジュール
TD_Dwf7Export.tx は Kernel SDK にあります。これは汎用であり、OdDbBaseDatabasePE 実装を使用してさまざまなデータベースをエクスポートするために使用できます。
TD_Dwf7Export.tx モジュールは、OdaMfcApp サンプルアプリケーションおよび ODA Drawings Explorer で使用されます。次の図は、開いているデータベースをエクスポートするために利用できる DWF 形式を示しています。
TD_Dwf7Import.tx モジュール
TD_Dwf7Import.tx は Drawings SDK にあります。.dwf ファイルを開いている .dwg 図面にインポートすることに特化しています。
TD_Dwf7Import.tx モジュールは、.dwf ファイルを開く際にエミュレーションモードで OdaMfcApp サンプルアプリケーションで使用されます。これにより、新しい .dwg データベースが自動的に作成され、そこへのインポートが開始されます。
ODA Drawings Explorer もこのモジュールを使用しますが、インポートコマンドを使用する前に、新規コマンドで新しい .dwg データベースを作成する必要があります。
TD_DwfDb.tx モジュール
TD_DwfDb.tx は Components/Dwfdb フォルダーにあります。これは、DWF、DWFX 2D、および DWFX 3D 形式ファイル用の特殊な読み取り専用データベースです。OdDbBaseDatabasePE 拡張プロトコルを使用します。ODA Drawings Explorer はこのモジュールを使用して .dwf および .dwfx ファイルを開きます。開く速度は、インポートを使用する場合よりも桁違いに高速です。
TD_DwfDb.tx モジュールは、デフォルトで有効になっている部分読み込みを使用できます。同時に、データは後続の解析のためにストリームに初期保存されます。解析は、あらゆる目的 (レンダリング、コンテンツのダンプなど) のためのデータの要求に応じて実行されます。
Components/Dwfdb/Examples フォルダーには OdDwfLoad があります。これは、静的構成のパッケージを使用する際の Dwfdb 接続の例として作成されました。(ODA Drawings Explorer はカスタム .tx ファイルをロードして使用するため、可能な場合は動的構成のみが使用されます。)
TD_DwfDb.tx は、3D .dwf ファイルからプロパティをロードする機能もサポートしています。特別なキーを持つコンソール例 OdDwfLoad は、これらのプロパティをダンプします。この場合、レンダリングと同様にオブジェクトをループし、ダンプ用のプロパティは以前に読み取られたキャッシュからオブジェクト ID によって要求されます。
このモジュールは、TD_DwfUnderlay.tx モジュール (Drawings SDK の一部) を使用して DWF アンダーレイエンティティをロードおよびレンダリングするためにも使用されます。