AutoCAD 的开源替代品

开源计算机辅助设计软件可能拥有您实际需要的一切。
1 位读者喜欢这篇文章。
3D CAD design

4334ATA,通过 Wikimedia Commons。知识共享署名-相同方式共享 3.0 协议。

编者按:本文最初于 2016 年 5 月发布,并已更新以包含一些其他选项。

CAD—计算机辅助设计或计算机辅助绘图,取决于您询问的对象—是为简化创建真实世界对象规范而创建的技术。无论您构建的对象是房屋、汽车、桥梁还是宇宙飞船,它都有可能在某种 CAD 程序中起步。

 

在最著名的 CAD 程序中,AutoDesk 的 AutoCAD 名列前茅,但还有许多其他专有和开源程序。那么,AutoCAD 的开源替代品表现如何?答案取决于您计划如何使用它们。

 

让我们首先坦诚地说明一些事情:如果您正在寻找现有 CAD 程序的直接替代品,该替代品将提供相同的功能和工作流程,而无需对您的流程进行任何更改,那么您将会失望。但我认为,您失望的原因与产品的许可无关—复杂程序的直接替代品很难找到,这些程序拥有长期用户,他们对软件有特定的需求和期望。

决定替代软件(无论是开源还是闭源)是否适合您的诀窍是弄清楚您的确切需求是什么。这种情况与发现坚持“需要”Photoshop 的人只是用它来绘制一些几何形状并去除照片中的红眼没有什么不同;他们真正需要的是一个图形编辑工具,可以替代那些特定功能。如果那些功能被付费但未使用,那么它是否具有原始软件的所有花哨功能是无关紧要的。

我个人使用开源 CAD 程序的经历没有什么不同。我在研究生院期间曾短暂使用过 AutoCAD,所以当我想玩三维绘图时,它几乎是我所知道的一切。但这本身并没有使 AutoCAD 成为最佳选择。

随着我努力用更多开源选项替换我生活中的更多软件,Blender 证明对于我的 3D 建模需求来说同样出色,无论我是玩为 3D 打印机创建的模型,还是查看从其他程序导出的景观。对于规划我的家庭景观项目的相对简单的任务,Sweet Home 3D 一直是一个出色的开源替代品。

如果您的需求更具体,并且您确实需要专用的 CAD 程序,那么以下是一些值得考虑的优秀开源选择

SALOME

SALOME 平台是一个适用于工业设计和模拟的应用程序和框架。它是 3D 巨头 OpenCascade 的一个副项目,并拥有一些重要的工业用户。SALOME 集成了 CAD 和 CAE 建模工具,以及工业网格划分算法和高级 3D 可视化。它的几何编辑器可以导入 STEP、BREP、IGES、STL 和 XAO 文件,而它的网格编辑器可以导入 UNIV、MED、GGNS、SAUV 等。它集成了 Python 支持。

与此列表中的所有其他 CAD 应用程序一样,它是开源的,因此如果您有内部开发人员为其创建插件,则无需处理笨拙的 API。您可以直接访问代码库。

 

SALOME desktop client

BRL-CAD

BRL-CAD 是一个可追溯到 1979 年的跨平台 CAD 工具,尽管源代码在 25 年后才以开源许可证发布。事实上,BRL-CAD 非常古老,以至于它被 誉为 当前正在积极开发的应用程序的最古老源代码存储库。

BRL-CAD 最初由 Mike Muuss 在陆军研究实验室开发,数十年来一直被美国军方用于武器系统建模,但它也已被用于更日常的设计任务,从学术到工业设计再到健康应用。

那么超过 35 年的开发为您带来了什么?BRL-CAD 由 400 多个不同的组成工具和应用程序组成,分布在超过一百万行的源代码中。并非所有部分都使用相同的许可证,许可证范围从 BSD 到 LGPL 再到简单的公共领域;项目 源代码 在 SourceForge 上的 COPYING 文件中有更多详细信息。

FreeCAD

FreeCAD 是一个 参数化 开源 CAD 程序,旨在能够设计“任何尺寸的真实物体”,尽管很明显,用户创建的 展示示例 中的许多是较小的物体,但没有具体理由说明它也不能用于建筑应用。FreeCAD 主要用 C++ 编写,如果您是 Python 程序员,您将希望利用使用其 Python 接口扩展和自动化 FreeCAD 的能力。

FreeCAD 可以从各种常用格式导入和导出 3D 对象,其模块化架构使其可以轻松地使用各种插件扩展基本功能。该程序具有许多内置界面选项,从草图绘制器到渲染器,甚至机器人模拟功能。FreeCAD 目前处于测试阶段,正在积极开发中,定期发布版本,但开发人员警告说,它可能尚未适合生产用途。

FreeCAD 的 源代码 托管在 GitHub 上,并根据 LGPL 许可证开源提供。

LibreCAD

LibreCAD 是另一个 CAD 程序,旨在跨 Windows、Mac 和 Linux 系统工作。LibreCAD 是 QCAD(如下所述)的一个分支,其界面对于 AutoCAD 用户来说会很熟悉,并且默认情况下,它使用 AutoCAD DXF 格式进行导入和保存,尽管它也可以使用其他格式。不过,LibreCAD 仅限 2D,因此如果您的预期用途是场地平面图或类似的平面图,则它更有意义。

LibreCAD 根据 GPL 获得许可,您可以在 GitHub 上找到其完整的 源代码


这些不是唯一的选择。其他值得您花时间查看的不错选择包括

  • OpenSCAD,它被誉为“程序员的实体 3D CAD 建模器”,因为它不是交互式建模器,而是使用脚本文件进行建模的建模器。
  • QCAD,它是跨平台的,但仅限于二维应用。
  • SolveSpace,它是一个参数化的二维和三维 CAD 程序。
  • OpenJSCAD.org,它是 OpenJsCad 的更新前端。两者都是基于 JavaScript 的 2D 和 3D 建模工具,可在浏览器中运行,并根据 MIT 许可证提供。

由于我们无法在此处包含所有选项,如果您有喜欢的选项,请在下面的评论中告诉我们。

您是否有兴趣阅读更多类似的文章?注册我们的每周电子邮件新闻通讯

Jason Baker
前 Red Hatter 员工。现在是一名顾问和有抱负的企业家。地图爱好者、创客,以及开源桌面和自托管软件的热情安装者。

贡献者

24 条评论

我使用在 Wine 下运行的 20 年前的 TurboCAD 副本。它比任何可用的 GPD CAD 软件都好。QCAD/LibreCAD 非常不友好,以至于使用它们是只有受虐狂才会考虑的事情。

我认为你说得很对。Linux 的美妙之处在于 Linux 本身,许多用户似乎痴迷于在 Linux 上也只使用 OSS,这限制了他们对计算机的使用,并且是对开源的忠诚度,这似乎远远超出了 Linus 和 Linux 内核的理念。

回复 作者:AC (未验证)

虽然不是开源的,但 BricsCAD 是 Autocad 的直接替代品。它甚至使用 Autocad 的大多数相同命令。它的价格也约为 1/2 到 1/3。BricsCAd 也有一个庞大的社区在使用该产品。作为 20 年的 autocad 用户,我只用了几分钟就上手了 BricsCAD。

我敢打赌,大多数 opensource.com 的读者都来自编程世界,因此会更喜欢 OpenSCAD。您只需编写对象代码——在稍微学习一下以记住基本命令后,它就变成了一个非常强大的参数化设计工具。总的来说,我发现那些还不熟悉某种可视化 CAD 程序的学生更快就能掌握它。也就是说,您可以兼得两者——因为 FreeCAD 有一个 OpenSCAD 模块。

我们真正需要努力的是让开源 CAD 程序进入学校——这样学生就可以首先熟悉它们,而不是被锁定在昂贵的专有软件包中。

我喜欢使用 OpenJsCAD,它类似于 OpenSCAD,但它不是使用特定领域的语言,而是使用 Javascript。在浏览器中运行,使用 WebGL 渲染模型。我用它设计了许多 3d 打印模型,包括我的结婚戒指。

回复 作者:jmpearce

我不是一个经验丰富的程序员,事实上,我编写的最困难的代码是在 HP 48 系列工程计算器(即 HP48SX 和 HP49G)中完成或 intended for 的。而且我的学术背景与编码没有很深的关系(机械工程)。说到 CAD 软件,这实际上是广义而言,上学真的很有帮助!因为无论您是否是程序员,在 CAD 软件中解决一些问题时,您都会时不时地进入程序员的领域。例如,绘制齿轮(齿轮)取决于非常具体的方程式,没有人甚至试图“绘制”它们——实际上这就是 CAD 的用途——,但输入这些方程式的方式在不同平台之间差异很大。不止一次我向致力于编码的朋友和同事寻求帮助,以解决问题。

回复 作者:jmpearce

试试 Draftsight。仅限 2D,但非常好用。仅供学生免费使用。

Draftsight 的基本版本对所有人免费,并且有 Linux 版本。您必须注册,但他们不会打扰您。CAD 引擎来自 Graebert,他们生产 ARES Commander,CorelCAD 中也是如此。
我需要制作行业标准的 2D CAD 图纸,而 Draftsight 是我发现的唯一可以在 Linux 上实现这一点的产品。(是的,2D 当然没有过时——我们数百万人仍然必须制作 2D 图纸。)
否则,FreeCAD 看起来很有趣,但仅处于 0.16 版本左右,因此还有很长的路要走。已经有 autocad dwg 导入功能,希望有人会为 FreeCAD 做一些 AutoCAD 命令别名。谁知道呢——也许我最终会做它们 :-)

回复 作者:maurog (未验证)

事实是,这些工具都无法解决与商业 CAD 工具相同的问题。BRL 是最接近的,但上次我使用它的建模简直令人震惊。其他的(为什么要包括 2d?)根本无法与 solid works、iron cad Autodesk 和其他一些不太知名的程序相提并论。

实际上,OS 中的 CAD 非常糟糕,只有非工程师才会使用它。

KediCAD 是最好的,您至少应该尝试一下。

谢谢

回复 作者:jopner (未验证)

我同意确实没有 AutoCAD 的直接替代品。另一个问题是,对于快速和“粗略”的创建,像 TinkerCAD 这样的东西可以帮助您快速组装概念模型,而无需安装程序。但由于它们都不是开源的,因此不需要评论时间。

我已经使用 QCad 社区版(分支到 LibreCAD)来制作我要裁剪的东西的 1:1 图案。我还使用 Blender 制作了一个站立式办公桌部件的模型。然后我使用 LibreOffice 对所有部件进行排序并将它们放置好,这样我就可以用一张 1/2 英寸厚的 4'x8' 胶合板制作办公桌。

Salome-Meca 在我的学习清单上,我相信它是开源的,并且包含在 CAELinux 中。

不幸的是,我看到太多用户试图将这些开源应用程序用作 AutoCAD 的替代品,但很少对他们奏效的情况。在教育行业,我培训过许多试图使用它们的个人,但发现自己要么在需要完成的工作方面受到限制,要么在需要查看 CAD 图纸的客户方面受到限制。

嗨!
虽然不是开源的,但我使用 VariCAD 作为我的主要 CAD 工具。它在 Linux 下原生运行,许可费约为 600 欧元。完整的 3D 建模和从 3D 生成 2D 或从 2D 生成 3D,自动生成 BOM,并且它使用的系统资源非常少,以至于我可以在 virtualbox 虚拟机中运行它,并且仍然可以管理房屋的完整 3D 模型。

我发现有这么多人在一个开源网站上对专有软件发表愚蠢的评论很有趣……真是的!!!

我使用 AutoCad 超过 25 年了,自 2015 年以来一直使用 Revit。我使用 Revit 进行设计,使用 AutoCAD 进行技术建筑图纸绘制。我有一个多年来建立的庞大库,因此另一个 Cad 软件程序必须让我大吃一惊,我才会考虑切换。

HacDC.org(首都黑客空间)的主席 Julia Longtin 也是 ImplicitCAD 的维护者,ImplicitCAD 是一个通过浏览器运行的 3D 系统,其脚本语言基于 OpenSCAD。源代码是用 Haskell 编写的,并且它承诺可以更好地处理曲线——或者 Julia 是这么说的。

它有点粗糙,但您可以在 http://implicit.faikvm.com/ 试用,和/或在 http://kalli1.faikvm.com/ImplicitCAD/Stablehttps://github.com/colah/ImplicitCAD 改进它。

注意:faikvm.com 是 Julia 的盒子,在她家运行(我认为),并且并非总是最可靠的东西。

(免责声明:我现在在 HacDC 的董事会任职,因为当他们招募志愿者时我退缩得太慢了。)

SolveSpace 是我的最爱。它可以做比所有其他软件更多的事情,并且非常快速、小巧和优雅。

FreeCAD 约为 100MB,LibreCAD 为 17MB,SolveCAD 以 3MB 完成相同的工作。
FreeCAD 使用 python 作为其内核,因此速度非常慢,但获得了大量贡献。

说 FreeCAD 在其*核心*中使用 Python 因此速度很慢是不准确的。系统的核心是 OpenCascade,这是一个血统良好的 C++ 库,UI 基于 Coin,另一个受人尊敬的 C++ 库。Python 用于扩展 UI,到目前为止,我还没有发现 FreeCAD 速度慢。

您也可以尝试 ActCAD 软件,它提供更高级的功能。
https://actcad.com/

我是一名学生,获得了免费版本的 AutoCAD,但是当我尝试通过 Wine 在 linux mint 中安装它时,它给出了错误。请问有人可以在这方面指导我吗?

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.