107 lines
2.4 KiB
Markdown
107 lines
2.4 KiB
Markdown
# 用例文档
|
||
|
||
## 目录
|
||
|
||
1. [UC-01:创建几何实体](#uc-01创建几何实体)
|
||
2. [UC-02:曲线曲面建模](#uc-02曲线曲面建模)
|
||
3. [UC-03:网格处理与分析](#uc-03网格处理与分析)
|
||
4. [UC-04:CSG 布尔运算](#uc-04csg-布尔运算)
|
||
5. [UC-05:碰撞检测](#uc-05碰撞检测)
|
||
6. [UC-06:空间查询](#uc-06空间查询)
|
||
|
||
---
|
||
|
||
## UC-01:创建几何实体
|
||
|
||
**参与者**:CAD 应用开发者
|
||
|
||
**前置条件**:引擎已初始化
|
||
|
||
**主流程**:
|
||
1. 开发者创建基本几何实体(点、线、面)
|
||
2. 对实体施加几何变换
|
||
3. 组合多个实体形成复杂几何
|
||
|
||
**后置条件**:几何实体可被后续运算引用
|
||
|
||
---
|
||
|
||
## UC-02:曲线曲面建模
|
||
|
||
**参与者**:建模工程师
|
||
|
||
**前置条件**:引擎已初始化
|
||
|
||
**主流程**:
|
||
1. 定义控制点和节点向量
|
||
2. 创建 NURBS 曲线或曲面
|
||
3. 对曲线/曲面进行求值、求导
|
||
4. 将曲面离散化为三角网格用于渲染
|
||
|
||
**后置条件**:曲线/曲面数据可导出为标准格式
|
||
|
||
---
|
||
|
||
## UC-03:网格处理与分析
|
||
|
||
**参与者**:CAE 预处理工程师
|
||
|
||
**前置条件**:已导入或生成初始网格
|
||
|
||
**主流程**:
|
||
1. 加载网格数据(OBJ/STL/PLY 格式)
|
||
2. 评估网格质量
|
||
3. 执行网格简化或平滑操作
|
||
4. 进行 Delaunay 三角剖分优化
|
||
5. 导出处理后的网格
|
||
|
||
**后置条件**:优化后的网格可用于有限元分析
|
||
|
||
---
|
||
|
||
## UC-04:CSG 布尔运算
|
||
|
||
**参与者**:参数化建模系统
|
||
|
||
**前置条件**:存在两个或多个实体
|
||
|
||
**主流程**:
|
||
1. 定义两个三维实体
|
||
2. 执行并集、交集或差集运算
|
||
3. 获取结果实体的网格表示
|
||
4. 将结果用于后续建模操作
|
||
|
||
**后置条件**:结果实体可继续参与建模操作
|
||
|
||
---
|
||
|
||
## UC-05:碰撞检测
|
||
|
||
**参与者**:CAM 刀路规划模块、机器人仿真
|
||
|
||
**前置条件**:已加载刀具模型和工件模型
|
||
|
||
**主流程**:
|
||
1. 构建 BVH 加速结构
|
||
2. 执行刀具与工件之间的碰撞检测
|
||
3. 计算最小分离距离
|
||
4. 返回碰撞点与穿透深度
|
||
|
||
**后置条件**:碰撞结果用于刀路修正或路径规划
|
||
|
||
---
|
||
|
||
## UC-06:空间查询
|
||
|
||
**参与者**:交互式选择工具
|
||
|
||
**前置条件**:场景中包含大量几何实体
|
||
|
||
**主流程**:
|
||
1. 构建八叉树或 KD-Tree 空间索引
|
||
2. 执行范围查询(框选实体)
|
||
3. 执行最近点查询(鼠标吸附)
|
||
4. 返回查询结果
|
||
|
||
**后置条件**:选中的实体高亮显示
|