13

是否有用于解析 AutoCAD 文件(DWG 或 DXF)的库(最好是开源的)?

4

4 回答 4

12

好吧,对于 DXF 文件格式,该规范可在线获得,因此您可以为此文件格式编写自己的解析器,该文档可在此处找到:http: //images.autodesk.com/adsk/files/acad_dxf0.pdf

但是,如果您不想这样做,可以使用 libdxf 一个开源库来解析 dxf 文件,但根据开发人员的说法,这是一个“正在进行的工作”,您可以在这里找到它: https ://github.com/bert/libdxf 或您可以使用以下命令将其安装在 ubuntu 中:

sudo apt-get install libdxflib-dev

另外一个由 coin3d 提供的库(可以单独使用)被命名为 dime,可能是 freecad 使用的库,可以在这里找到:https ://bitbucket.org/Coin3D/dime 它也可以安装在 ubuntu 中使用以下命令:

sudo apt-get install libdime-dev 

对于 DWG 格式,您可以使用来自开源基金会的 libredwg 库,您可以在这里找到它: http ://www.gnu.org/software/libredwg/

但请注意,根据维基百科,它有自己的许可问题。 http://en.wikipedia.org/wiki/LibreDWG

libredwg 的一个分支以 libDWG 的名义提供,它能够读取DWG 文件格式 R13、R14、R2000 和 R2004,可以在以下位置找到:http: //libdwg.sourceforge.net/en/ 我测试了库和问题是大多数在线示例文件的版本比库可以加载的版本更新,这不是很实用。

另一个关于如何读取 autocad 文件的好页面(带有一些代码示例)可以在 ibm 网站上找到:http: //www.ibm.com/developerworks/opensource/library/os-autocad/

底线是使用 dxf 是更好的选择,因为它是开放的并且可以支持 dwg 支持不容易完成。

于 2014-04-19T16:19:44.830 回答
8

C#和.Net CAD 组件中的开源 cad 绘图 (dwg) 库的副本(或至少与之相关) ,可以读取/写入 dxf/dwg 文件

没有任何东西可用于免费解析 DWG,我认为这是可靠的。与 AutoDesk 的 RealDWG 产品相比,开放式设计联盟往往更便宜且可在更多操作系统上运行。ODA 为尚未发布代码的初创公司提供了一个价格层——RealDWG 没有。ODA 和 AutoDesk 都在论坛中提供支持 - 您必须是 ODA 的成员,但 AutoDesk 的论坛位于http://discussion.autodesk.com/forums/,您可以免费加入。

DXF 是一种文本文件格式(类似于 XML),如果您知道要查找的内容,您可以使用您喜欢的任何内容对其进行解析。您可能更幸运地找到了一个库(我还没有研究过),但这将涉及从 DWG 格式的转换。请注意,DXF 格式有多种版本

您可以试用 Autodesk 的 DWG Trueview(免费),但它是最终用户查看器 - 它没有正式提供 API。过去,有些人在自动化方面取得了不同程度的成功。我自己没有尝试过,我强烈怀疑最新版本已经对此进行了强化。

归根结底,如果您正在为可能会坚持或至少对缺少“官方”AutoCAD 库和与之配套的“受信任的 DWG”BS 犹豫不决的知名客户工作,那么您可能需要投资一个Autodesk 开发人员网络的成员。

作为一个长期的最终用户,我可以告诉你,ODA 的开发人员对错误报告的反应比 AutoCAD 更敏感。

于 2010-04-17T12:54:24.457 回答
1

Ivan CAD 库与 DWG R15、R18、R21 和 R24 配合得非常好。我在 www.ivancad.com 上找到的

于 2012-12-04T03:39:31.617 回答
0

不要以为您会找到比 DWGdirect 更好的东西。看这里

http://www.opendwg.org/

特别是这里:

http://www.opendesign.com/the_oda_platform/dwgdirect

于 2010-04-15T22:04:28.480 回答