
开源浏览器原生 CAD 几何引擎,Rust 编写编译为 WebAssembly,支持参数化建模、布尔运算、STL/STEP/IFC 导出,适合浏览器 CAD 和 AI 辅助设计
核心特性
- 浏览器原生 CAD 内核:几何引擎用 Rust 编写,编译为 WebAssembly,配合 Three.js 友好的 TypeScript 层,在浏览器中运行确定性强的 CAD 操作
- 参数化建模:支持线、圆弧、曲线、多段线、矩形、多边形、实体、立方体、圆柱、球体、梭形体等基元
- 布尔运算:墙体/开口减法、联集、差集等实体布尔工作流
- 挤出与扫握:多边形挤出为实体、路径扫握构建复杂形状
- 多格式导出:STL、STEP、IFC、PDF 投影(浏览器端 PDF 在路线图中)
- AI 辅助 CAD 友好:内核层保持明确与确定性,AI Copilot 或 Agent 可将用户意图转为具体建模操作,OpenGeometry 执行实际几何运算
- AGENTS.md:专为 ChatGPT、Claude、Gemini 等编码代理提供单一信息源(架构、命令、注意事项、行为规则)
能力矩阵
| 类别 | 能力 |
|---|---|
| 基元 | 线、圆弧、曲线、多段线、矩形 |
| 形状 | 多边形、实体、立方体、圆柱、球体、梭形体、扫握体、开口 |
| 操作 | 三角化、挤出、扫握、偏移、布尔运算 |
| 导出 | STL、STEP、IFC、PDF 投影 |
| 集成 | Three.js 场景管理、WebAssembly 驱动性能 |
快速使用
npm install opengeometry
import { Cuboid, OpenGeometry, Vector3 } from "opengeometry";
await OpenGeometry.create({
wasmURL: new URL(
"node_modules/opengeometry/opengeometry_bg.wasm",
import.meta.url
).href,
});
const cuboid = new Cuboid({
center: new Vector3(0, 0, 0),
width: 2, height: 1, depth: 1,
color: 0x33aa66,
});
cuboid.setPlacement({
translation: new Vector3(1, 0, 0),
rotation: new Vector3(0, 0.25, 0),
scale: new Vector3(1.25, 1.25, 1.25),
});
适用场景
浏览器 CAD 工具、AEC/BIM 应用、产品配置器、AI 辅助设计前端、基于 Three.js 的建模工具
资源
暂无评论
