返回资讯中心
外部精选
软件工程
#开发者实时流

Antimony:源自Lisp机器而非绘图板的CAD软件

来源标题:Antimony: CAD Software Evolved from Lisp Machines and Not Drafting Tables

Antimony是一款从Lisp机器传统演化而来的CAD软件,而非源自传统绘图板。它支持用户定义自定义形状,内置形状通过前缀字符串语法编码为距离场表示,并可解析为数学函数。该项目长期开发中,提供Mac预编译应用,源码在GitHub上开放,支持Mac和Linux构建。

Hacker News 最新pmkary2026/11/2 · 今天3 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

顺便说一句:大多数用户使用内置形状就能满足需求,但也可以自定义形状。形状用前缀字符串语法表示,这种语法易于解析,但解读起来有点晦涩。以下是上面用到的圆形形状的定义: def circle(x0, y0, r): return Shape( '-r+q-Xf%gq-Yf%gf%g' % (x0, y0, r), # math string x0 - r, y0 - r, x0 + r, y0 + r) # bounds 将前缀字符串拆开并按层级缩进,得到:

r + q

X f%g q

Y f%g f%g % (x, y, r) 这编码了二维圆形的距离场表示: f(x,y) = sqrt(pow(x - x0, 2) + pow(y - y0, 2)) - r 其中 x0、y0 和 r 是圆心坐标和半径(在调用 circle 时指定)。 前缀字符串到中缀函数的具体映射留给读者作为练习(也可以查阅我论文的附录 A)。 预编译的 Mac 应用可以从 Github releases 页面下载。Antimony 的源码在 Github 上提供,同时附有在 Mac 和 Linux 上构建的说明。Antimony 是一个长期运行、持续开发中的项目。

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →