OpenGeometry - 浏览器原生 CAD 内核,Rust + WebAssembly 构建

OpenGeometry - 浏览器原生 CAD 内核,Rust + WebAssembly 构建


开源浏览器原生 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 的建模工具

资源

2300举报0Xiao.Xi12天前
点击获取 ^_^

暂无评论