在 ODA SDK 中使用 DWF 文件

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。

本文介绍了三个主要的基于工具包的支持模块:

  • 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 格式。

 

3D DWF save

 

TD_Dwf7Import.tx 模块

TD_Dwf7Import.tx 位于 Drawings SDK 中。它专门用于将 .dwf 文件导入到开放的 .dwg 图纸中。

TD_Dwf7Import.tx 模块在 OdaMfcApp 示例应用程序中以仿真模式打开 .dwf 文件时使用。这会自动创建一个新的 .dwg 数据库并开始导入。

ODA Drawings Explorer 也使用该模块,但需要在使用导入命令之前通过新建命令创建一个新的 .dwg 数据库。

 

ODA Drawings Explorer DWF

 

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 从先前读取的缓存中请求要转储的属性。

 

loading properties from 3D dwf

 

此模块还用于使用 TD_DwfUnderlay.tx 模块(Drawings SDK 的一部分)加载和渲染 DWF 衬垫实体。

今天就开始行动

免费试用 ODA 软件 60 天。
无风险,无需信用卡。

免费试用