语言
faijs — 开源 CAD 建模语言
faijs 是开源的 CAD 建模语言(JavaScript 库):模型即代码,参数即变量。同一份模型可在浏览器、Node 与微信小程序中运行——FaiCAD 全系产品的建模内核。
模型即代码
以 JavaScript 子集描述建模过程,无控制流、确定性执行,天然适配版本管理与 AI 生成。
BREP / Mesh 双链路
每个操作具备 BREP(OCCT)与 Mesh(manifold)双实现,静态规则分派。
多环境运行
浏览器 / Node / 微信小程序,同一语言,同一结果。
一段真实的 .fai.js
// plate.fai.js —— 一块带孔的安装板
let plate = cad.box(80 * MM, 60 * MM, 8 * MM, { centered: true })
let hole = cad.cylinder(4 * MM, 20 * MM, { centered: true })
plate = cad.subtract(plate, hole) 格式
fai.zip — 交换"活的模型"
业界模型交换基于 STEP,而 STEP 是非参数化的:几何在,建模意图丢失。fai.zip 是基于 faijs 的参数化模型格式——交换的是可继续编辑参数的 3D 模型。
几何之外,意图也在
参数、特征与建模历史随模型一起交换,接收方看到的是"怎么建出来的",不只是"建成了什么"。
交换之后,模型仍然活着
打开 fai.zip 即可继续编辑:改一个参数,整棵特征树联动重算。
面向协作的行业格式
设计传递、供应链协同、版本迭代——模型在环节之间流转时不再"降级"为死几何。