锑-来自平行世界的CAD

在三维CAD系统中,最著名的是实现两种主要设计方法的程序:直接建模和参数化。

此外,有些程序CAD系统允许通过编程进行建模。 这种方法已经在具有开放源代码和设计的编程和设计设备的爱好者中得到认可。 例如,OpenSCAD是众所周知的,已经多次提及。

我建议查看另一个称为锑的异常CAD系统。

图片
1.锑-来自平行世界的CAD

Antimony是一种开源CAD软件,它提供了使用有向无环图进行实体建模的方法。

此方法用于3D可视化,纹理化和游戏图形创建的各种程序包中,并且对于固态建模,可能是首次使用此方法。

作者马特·基特(Matt Keater)本人将自己的想法描述为“来自平行宇宙的CAD”。
锑由三个主要成分组成:

  • 用于沿有向无环图移动数据的框架。
  • 使用实体的功能表示(F-Rep)进行CSG(构造实体几何)操作的几何核心。
  • 图元和转换库“ fab”。 该库既包含移动,缩放,旋转,布尔运算等熟悉的操作,又包含固态CAD系统的异常操作(如吸引,排斥,弯曲等)。

图片
2.排斥变形

锑实体建模是通过连接图形节点完成的。
节点是图元或转换。

每个节点都有可以手动输入值的字段,可以根据另一个节点的参数进行设置,可以通过节点和字段的名称来访问它们,并将该节点连接到上一个节点。

图片
3.通过通信以及节点名称和参数的值传递

每个节点内部都有一个可以编辑的Python脚本,您也可以使用自己的脚本创建新节点。

图形中的关系提供了更改的自动传播。

图片
4.脚本节点“ circle”

一般而言,构建模型的原理与更为熟悉的CAD系统相同:我们采取一个扁平的图形,对它应用构建三维物体的操作(或立即采用三维图元),然后使用布尔运算将该几何体与其他物体组合,或使用位移和变形的操作。

模型可以是单体模型也可以是多体模型,在用户设置连接之前,锑不会强加刚性参数连接。 平面图形的选择很小,但是它们都是封闭的区域,因此对实体的逻辑操作相同。

用户界面由两个主窗口表示:图形窗口和
视口(viewport)窗口。 您可以打开一个包含四个投影的附加视口窗口。

图片
5.一切简约

可以通过在图形窗口和视口窗口中的任意位置单击鼠标右键来调用操作菜单。

除了上述更改节点参数的方法外,还可以与基元和操作进行交互,并使用活动的鼠标点拖动它们。

由于该程序的作者在Formlabs中工作,因此他考虑了实现结果模型的可能性。 因此,Antimony支持以2.5D栅格(PNG格式的高度图)形式和STL格式的模型形式进行3D打印的模型导出。 导出命令也是图节点。

图片
6.导出到STL的结果

还有一些缺陷:

  • 没有从其他CAD系统导入模型。
  • 无法将任意平面轮廓设置为三维物体的草图大大限制了建模的可能性。
  • 如何合理地制作倒角和圆角的问题仍然存在。
  • 该项目的稳定性水平估计为beta版,可能不值得尝试在锑中认真做一些事情,但玩起来会很有趣。

期待设计工程师的愤慨,我必须说,创建这样的CAD系统主要不是出于实际目的,而是出于作者的个人体育或科学兴趣。 显然,由于锑是专门为三维物体建模而设计的,因此我们此处并未讨论任何图纸。

我会表达我的个人印象,即在锑中玩模型是非常不寻常且有趣的,几乎完全没有用户界面元素有助于沉浸在建模过程中并带来令人愉悦的消遣。

作者并非偶然地为其异常的CAD系统选择了名称。 锑被翻译为锑-一种结合了金属和非金属特性并在熔体凝固时膨胀的物质。

有趣的是,在Matt Keater的截屏视频中看到了该程序的工作:


Github

锑是用C ++和Python编写的。 该存储库包含来自Linux和macOS的汇编指令以及现成的DMG映像。

Source: https://habr.com/ru/post/zh-CN427095/


All Articles