# 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 驱动性能 | ## 快速使用 ```bash npm install opengeometry ``` ```ts 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 的建模工具 ## 资源 - 官网: https://opengeometry.io - 文档: https://docs.opengeometry.io - 在线 Demo: https://demo.opengeometry.io - 快速开始: https://github.com/OpenGeometry-io/quickstart-js --- **分类**:源码 **标签**:浏览器 · CAD · opengeometry **作者**:Xiao.Xi **链接**:https://octohz.com/p/1606