欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

使用C#读取和处理DWG/DXF CAD文件 - 详细步骤解析

最编程 2024-01-24 11:46:26
...

找解析CAD的库时,有两种思路,一种是找开源的,另一种是找PoJie的。

本文主要介绍(免费的)开源 工具库。
网上可以搜到很多解析库,Nuget包管理器中通过dwg、cad等关键字也可以看到许多库。
它们大多是商业库(有自己的协议许可),如Aspose.CAD、CAD.NET、Atalasoft、BricsCAD等。
也有一些开源的,如ACadSharp(MIT)、netDxf(MIT)等。

商业库用法简单,但是你得买它们许可证,或者申请试用版(通常有期限,并且功能限制,总之体验一般)。

许可证价格一般一年要几千刀,规模小会便宜些,但折算RMB也是破万的。总之如果你想在程序中使用它,并不便宜。

上面提到了两个开源库,一个是ACadSharp,另一个是netDxf。
其中ACadSharp这个库还处在alpha版本,虽然已经支持了多个版本的dxf和dwg,但作者仍在完善中(部分功能在重构)。如果你打算用到项目中,现阶段可能还不是很理想。

3.1 netDxf

netDxf相对来说比较成熟,且一直在更新,但它是专用于dxf格式的。
在这里插入图片描述

3.2 Teigha

此外,还有上面提到的ODA组织,它为多平台提供了支持,.NET下的叫 Teigha for .NET

虽然它破解了dwg格式造福大众,但这并不意味着它真的不需要一分钱,正如它自己所说,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

它将自己定性为一个非营利性的技术组织,它们开发软件只为了会员的利益。
你要用它们的软件,那得成为会员,而加入会员就需要交会费。
很合理吧。
这个价格看起来并不便宜,首年6000刀,往后每年3600刀。
你可能会想,AutoCAD也就多少钱一年,你这怎么这么贵?
但两者不一样,AutoCAD是给你软件使用权,ODA是给你核心技术。
前者是买来用,后者是交钱拿技术自己开发/当然也能用。

题外话,
Autodesk不是ODA会员,而几乎所有的Autodesk竞争对手都是ODA会员。
Autodesk对ODA可谓恨之入骨,其CEO Carl Bass甚至还将ODA比喻为“敌人的军火提供商”。
虽说ODA是Autodesk的死对头,但实际上ODA对AutoCAD的成功做出了非常重要的贡献,因为它使非Autodesk客户仍然可以继续使用DWG文件作为其主要的数据交互格式,实现与AutoCAD的数据交互。目前就全球的使用比例来看,二维CAD的普及率依然远高于三维CAD,而且这种局面在未来几年仍将持续。

3.2.1 官网获取

说了这么多,怎么获取呢ODA的Teigha库呢,难道真的要成为ODA会员吗?
也不是,ODA是有提供免费试用版,
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
填个表,60天试用,并且有免费的技术支持。

3.2.2 网上获取

当然若你不想注册,百度一下也可以找到许多Teigha的库。
具体版本和使用可以参考这篇博客,

这篇博客


推荐阅读