Files
ViewDesignEngine/docs/21-v4.3-开发计划.md
T
茂之钳 fcf25e561d feat(v4.4): complete remaining v4.1-v4.4 features + precision tolerance + Euler ops
v4.1 收尾:
- IncrementalUpdateEngine: dirty flag propagation, cache invalidation
- LargeAssembly: InstanceCache, assembly instancing
- STEP import: robust/graceful parsing with skip tracking

v4.3 分析工具:
- Mass properties (volume, centroid, inertia tensor)
- Clearance analysis, wall thickness analysis
- Enhanced drawing: hidden-line removal, offset sections, BOM
- DXF import (LINE/CIRCLE/ARC/LWPOLYLINE/SPLINE → B-Rep extrusion)

v4.4 地基加固:
- ToleranceChain: RSS cumulative tolerance propagation (7 tests)
- Euler operations: MEV/KEV/MEF/KEF/KEMR/MEKR (20 tests)
- Replace hardcoded tolerances with ToleranceConfig in validate
- Fix incremental_update test API mismatch (15/15 pass on Linux)

Docs:
- v4.1-v4.4 development plans + roadmap updated
- v4.4 marked complete on Linux

30 files, +3424/-210
2026-07-26 16:49:37 +08:00

3.5 KiB
Raw Blame History

ViewDesignEngine v4.3 — 分析工具 + 工程图增强 + v4.1 收尾

制定: 2026-07-25 | 状态: 完成

进度: §1 v4.1收尾 | §2 分析工具 | §3 工程图增强 | §4 DXF导入

承接 v4.2(共享拓扑地基加固)的阶段性成果,v4.3 补齐分析工具链、增强工程图能力,并收尾 v4.1 遗留项。


1. 🔄 v4.1 收尾

1.1 增量更新引擎

  • incremental_rebuild() — real evaluator-based rebuild with model caching
  • invalidate_cache(node_id) — 清除缓存 + 传播脏标记到下游
  • 测试:14 项测试含求值、缓存、依赖排序、失效传播

1.2 大装配

  • InstanceCache — LOD mesh 共享、bounds 缓存、memory estimate
  • 测试:5 项测试通过(已有实现,本轮验证)

1.3 STEP 导入容错

  • 容错解析:未知实体类型记录跳过而不是崩溃
  • step_skipped_count() / step_skipped_types() API
  • 单个 solid 转换失败不中断整体导入
  • 测试:3 项容错测试

2. 🔬 分析工具

2.1 质量属性

  • mass_properties(const BrepModel&) — 体积、质心、惯性张量(四面体分解 + 平行轴定理)
  • assembly_mass_properties(const AssemblyNode&) — 装配体惯性张量、回转半径
  • 测试:5 项单实体 + 4 项装配体(与解析解对比)

2.2 间隙分析

  • clearance(const BrepModel& a, const BrepModel& b) — 两实体间最小距离
  • AABB 快速排斥 + mesh 三角距离精确计算
  • 测试:2 项(分离/重叠)

2.3 壁厚分析

  • analyze_wall_thickness(const BrepModel&, int samples_per_face) — 沿面法向采样测壁厚
  • 输出:min/max/avg 壁厚 + 薄壁/厚壁区域计数
  • 测试:3 项(立方体/空体/薄板检测)

3. 📊 工程图增强

3.1 隐藏线消除 (HLR)

  • ProjectionViewhidden_lines 字段 + generate_views 多视角投影
  • mesh ray-casting 遮挡检测
  • 支持正投影(front/top/right+ 等轴测
  • 测试:20 项(含 HiddenLines 专项测试、多体类型)

3.2 局部剖 / 阶梯剖

  • section_view(body, point, normal) — 任意剖切面
  • offset_section_view(body, normal, offsets) — 多段阶梯剖
  • 合并剖面 + 阶梯线标记
  • 测试:4 项 OffsetSectionTest

3.3 BOM 表

  • generate_bom(const AssemblyNode&) — 按名称合并、数量统计、总体积
  • 测试:5 项 BomTest(单零件/多零件/嵌套装配/空装配)

4. 📐 格式增强

4.1 DXF 导入

  • DXF 解析器:tokenize → section split → entity parseLINE/CIRCLE/ARC/LWPOLYLINE/SPLINE
  • 图层保留(layer name 输出到 DxfContour
  • extrude_dxf_contour(contour, height) → B-Rep
  • import_dxf_as_solids(filepath, height) — 一键导入拉伸
  • 测试:10 项(空文件/直线/圆/弧/多段线/样条/未知实体容错/多实体/挤出)

里程碑

里程碑 内容 预计
M1: 收尾 v4.1 剩余 4 项全部完成
M2: 分析工具 质量属性 + 间隙分析 + 壁厚分析
M3: 工程图 HLR + 局部剖/阶梯剖 + BOM
M4: 格式 DXF 导入

与 v4.2 差距分析的对应

v4.2 差距项 v4.3 对应
质量属性 §2.1
壁厚分析 §2.3
间隙分析 §2.2
隐藏线消除 §3.1
局部剖/阶梯剖 §3.2
BOM 表 §3.3
DXF 导入 §4.1