LFlyGM 是一个基于 Three.js 的3D几何内核,支持完整 B-rep 拓扑结构。 通过自然语言指令,即可创建、编辑和渲染3D几何模型。
LFlyGM 采用分层模块化架构,从底层几何原语到上层建模操作,每一层职责清晰,相互协作。
底层几何原语:点、向量、矩阵、坐标系、包围盒等基础数学对象
完整的边界表示拓扑结构,8层层次模型维护实体间的邻接关系
拉伸、旋转、SheetBody 建模构建器,以及欧拉操作算子
Three.js 渲染管线:几何绘制器、建模绘制器、拓扑可视化器
曲线/曲面离散化、求交算法、距离计算、投影算法
自然语言命令解析器,支持中英文指令,智能识别绘图意图
基于 Mäntylä 经典理论的边界表示法,从顶点到体的完整8层拓扑层次。
LFlyGM 的 B-rep 实现采用半边数据结构(CoEdge),精确维护拓扑元素之间的邻接关系。 每个 Face 由外环定义边界,内环定义孔洞,几何曲面定义形状。
支持解析曲线/曲面和B样条曲线/曲面,参数化表示,完整的求值与离散化算法。
基于经典欧拉操作理论,提供从低层原子操作到高层组合建模的完整工具链。
局部原子操作,参考 GWB (Geometric WorkBench) 实现。灵活但需自行维护一致性。
安全操作,自动验证欧拉公式,支持错误回滚。推荐日常建模使用。
组合建模操作,从轮廓到实体的快速构建器。
5种基本体,均基于欧拉操作构建完整B-rep拓扑结构,而非简单的三角网格拼凑。
内置命令解析器,支持中英文自然语言指令,智能识别绘图意图并自动构建几何模型。
同时支持中文和英文指令输入,如"绘制点"、"画圆"、"draw point"等,自动识别意图。
从自然语言中自动提取坐标、半径、角度等数值参数,支持多种表达格式。
支持通过"点1"、"点2"引用已有对象,实现"连接点1和点2"等关联操作。
自动管理场景对象,实时更新对象树,支持撤销/重做操作。
轻量级技术栈,零构建依赖,浏览器端即开即用。
纯 JavaScript (ES6 Class),零构建工具,零依赖管理。浏览器端和 Node.js 双环境支持。
Three.js 渲染引擎,支持 OrbitControls 交互。自研几何内核与 Three.js 场景无缝桥接。
Cloudflare Pages 静态部署 + Workers API 后端,KV 存储用户认证,全球 CDN 加速。