Commit Graph

7 Commits

Author SHA1 Message Date
818a5e0ad7 refactor: ModelItemTreeWalker 通用遍历工具(统一 IsHidden 剪枝 + 聚合盒剪枝 + 后序传播)
新增 src/Utils/ModelItemTreeWalker.cs:
- WalkVisible/WalkModels:深度遍历,IsHidden 剪枝内置(父隐藏 → 整棵子树跳过)
- 回调返回 ModelItemWalkAction(Prune/Continue/Hit)——剪枝条件与深入策略由调用方决定
- Hit 触发父级后序传播(postHitVisit)——共享祖先只上传一次(消除 K×D 枚举)
- onHidden 回调(隐藏节点统计)

迁移:
- SectionBoxExporter.TraverseAndCollect → walker(聚合盒剪枝 + 后序传播语义不变)
- ModelItemAnalysisHelper.GetAllVisibleGeometryItems → walker(栈式循环替换,统计保留)

修复:
- run-unit-tests.bat 过滤器排除 NavisworksIntegrationF1(F1 测试此前会被单元测试集选中,
  无主 NW 环境时失败)

验证:单元 244/244、集成 25/25(SectionBox 61ms)、Architecture 111ms(无回退)、对象 228 一致
2026-08-06 10:53:18 +08:00
488e69d27a fix: 脚本统一用 pwsh 替代 powershell,MSTest adapter 动态查找
- start-navisworks.bat / run-ground-virtual-collision-test.bat:
  powershell → pwsh(避免依赖 shim/PS5.1,UTF-8 中文输出更可靠)
- deploy-plugin.bat 提权兜底:PowerShell → pwsh(内外一致)
- run-unit-tests.bat:MSTest adapter 路径硬编码 3.0.4 → 通配符动态查找
  (包升级后不再失效)
2026-08-02 20:41:18 +08:00
b849bd9aed Add Navisworks automation integration tests 2026-04-13 02:33:29 +08:00
3fd184934b Establish canonical coordinate framework with tests 2026-03-21 06:10:34 +08:00
77b9da40fc 实现路径分析功能 2026-02-14 17:39:40 +08:00
93135d3c29 增加了路径曲线化的方案,实现了基础的曲线化路径数据结构和存储,以及曲线化核心算法 2025-12-30 18:29:41 +08:00
773e3e63ae 完成了UI架构重构,增加了一些测试。解决了测试框架依赖导致的启动崩溃问题。 2025-08-17 23:02:09 +08:00