f38bae137a
feat: F1 批处理端到端测试 + batch-queue-status 端点
...
服务端:
- 新增 GET /api/test/batch-queue-status(查询队列项状态:
id/status/errorMessage/collisionCount/detectionRecordId,供测试轮询)
- BatchQueueManager 增加 internal GetDatabase() 访问器
客户端:
- NavisworksTestAutomationClient 新增 BatchQueueStatusAsync /
BatchQueueProcessAsync
测试:
- BatchQueueF1ProcessAutomationTests(TestCategory=NavisworksIntegrationF1,
不在默认全量内):add(虚拟物体 F1 场景)→ process → 轮询 status
至 Completed → 断言碰撞报告。单独跑约 30 秒。
AGENTS.md:记录 F1 测试用法(bat 参数含 = 会截断,用 FullyQualifiedName~)
2026-08-06 00:29:58 +08:00
e0b01247ab
chore: 新增 run-integration-tests.bat 集成测试脚本(支持过滤器参数)
...
- 无参数 = 全量集成测试(TestCategory=NavisworksIntegration)
- 带参数 = 子集,如 FullyQualifiedName~RealObjectAnimation
- 自动:编译测试项目、查找 MSBuild/VSTEST/MSTest adapter、追加 Navisworks API PATH
- 主实例就绪检查(HTTP 18777 ping),未就绪明确报错
- AGENTS.md 记录用法与 bat 编码约束(CRLF + GBK)
验证:子集 3/3、全量 25/25 通过
2026-08-05 23:57:36 +08:00
d04c37a7a5
vendor Navisworks 2026 API DLL into repo, use relative references
...
- Add libs/navisworks-2026/ with 6 API DLLs + 3 XML doc files copied
from local Navisworks Manage 2026 install (Api/Timeliner/Clash/
Controls/ComApi/Interop.ComApi)
- Change TransportPlugin.csproj and UnitTests csproj HintPaths from
absolute Program Files paths to relative libs paths (build no longer
depends on the Navisworks installation directory)
- Keep Private=False semantics for plugin (NW loads its own DLLs at
runtime) and Private=True for unit tests
- Record the libs reference rule in AGENTS.md to prevent regression
Verified: compile successful, 255/255 unit tests pass
2026-08-04 11:57:20 +08:00
5bdfa8281d
docs: 强化 AGENTS.md 单位原则——模型单位≠米(取决于文档单位),补充测试警示
...
- 新增三层单位语义表(模型单位/米/配置项)
- 强调模型单位取决于当前 NW 文档单位(如 Floor2 为英尺,1米=3.281模型单位),禁止假设等于米
- 明确 TotalLength 等长度属性返回米,禁止二次换算
- 新增 §6.4 测试警示:集成测试断言长度必须按文档单位因子换算,涉及单位换算的断言不放单测
- 排查指引新增'长度/尺寸偏差约 3.28 倍'条目(源于本次集成测试单位踩坑)
2026-08-02 21:22:31 +08:00
8ee06586af
docs: Shell规范更新——rg/fd等读取命令用bash直接执行
...
历史:早期默认shell有UTF-8乱码才统一用pwsh;现已配置Git Bash
(shellPath),原生支持UTF-8。更新规范:
- rg/fd/读日志等搜索读取 → bash 直接执行
- .bat 部署/编译/测试流水线 → 仍走 pwsh
2026-08-02 20:33:38 +08:00
70fee3cf3a
fix: 碰撞报告容差单位错误 & 导入路径增量刷新; docs: AGENTS.md 构建脚本
2026-07-07 20:38:59 +08:00
75afba7670
docs: 去掉UTF-8显式设置,已配好pwsh profile
2026-06-10 17:48:48 +08:00
020e265918
docs: pwsh 命令加 UTF-8 输出编码设置
2026-06-10 17:45:16 +08:00
e9fb47d9ad
docs: shell命令统一用pwsh执行
2026-06-10 17:44:43 +08:00
378bb6264c
add edit tool usage notes to AGENTS.md
2026-05-30 19:17:30 +08:00
19a38e5446
0.15.1: 修复角度输入崩溃、Y轴修正动画丢失、数据库连接缺失三个bug
...
- 修复编辑角度窗口空输入反复确认崩溃 (UpdateSourceTrigger LostFocus→Explicit)
- 修复Y轴角度修正在动画播放时双重叠加导致丢失 (删除 ApplyPlanarTrackedPose 中重复的 ResolvePlanarHostUpCorrectionRadians)
- 修复先开文档后加载插件时路径数据库未连接 (InitializePathPlanningManager 中加入数据库连接)
- 重构: TryConnectPathDatabase 辅助方法; TryUpdateNumberTextBox 拆分验证逻辑
- 更新 AGENTS.md 精简版; 更新 CHANGELOG.md 0.15.1; 更新 todo_features.md 5/18 条目
2026-05-26 21:02:48 +08:00
47af2443cd
数据库schema兼容+剖面盒导出修复+代码重构
...
- 数据库:SafeCreateIndex/EnsureColumnExists 防御旧schema;去掉无用PRAGMA user_version;去掉重复throw;清理注释编号
- 剖面盒导出:修复NWF多Model无统一根节点时空白子树泄露(RootItem级隐藏)
- 崩溃修复:去掉LayerManagementViewModel中两处Task.Run,消除COM跨线程STA违规
- 重构:SectionBoxExporter新增ExportSectionBoxFromActiveView统一业务入口;LayerManagementViewModel删ExportSectionBoxToNwdAsync;删死代码ExportToJson(Document)/ShowSaveFileDialog
- deploy-plugin.bat: powershell→pwsh;AGENTS.md补充编译部署调用说明
2026-05-16 14:59:56 +08:00
b849bd9aed
Add Navisworks automation integration tests
2026-04-13 02:33:29 +08:00
042f30bf87
地面路径重构失败,留下一些教训
2026-04-06 22:39:02 +08:00
8a7563a4fe
Clarify ground tracked-point semantics
2026-04-06 08:55:53 +08:00
2e0b26e032
Refine rail assembly workflow and viewpoint strategies
2026-04-01 10:47:34 +08:00
1d71d36e5f
修复rail路径的编辑状态问题
2026-03-30 22:13:16 +08:00
138eb43a67
Unify real-object rail pose interpretation
2026-03-25 00:11:07 +08:00
290df34dec
Interpret fragment up for real object pose
2026-03-24 21:04:24 +08:00
8d10f959b2
Add fragment up detection and real object pose probes
2026-03-24 19:06:50 +08:00
d52b1aef08
Checkpoint animation rotation refactor state
2026-03-23 21:00:02 +08:00
ae845bc571
检查并修复弹出窗口、对话框、消息框,未设置owner的情况
2026-02-23 00:25:17 +08:00
9751287884
纠正碰撞对不显示虚拟物体的问题
2026-02-18 15:19:58 +08:00
178aa995ff
对代码进行审查并优化
2026-02-16 11:55:45 +08:00
2fb883ae18
将插件和输出名字中的navisworks去掉
2026-02-16 11:22:03 +08:00
fdcd8edfc0
将虚拟车辆改成虚拟物体
2026-02-16 09:02:50 +08:00
77b9da40fc
实现路径分析功能
2026-02-14 17:39:40 +08:00
e221d42812
新增排除对象管理功能,支持预计算分析添加到列表,支持用户手动添加和清除排除对象,支持数据库存储
2026-02-09 22:48:23 +08:00
6be1de113e
优化代码格式,调整空行和注释位置;更新生成碰撞报告的方法为异步执行
2026-02-06 20:42:40 +08:00
4069668a2a
修复批处理未加载待处理项,并修复空中路径创建
2026-01-29 13:27:43 +08:00
07f8f5b2bf
修复网格可视化性能问题
...
根本原因:新代码在循环中调用了 AddPoint() 方法,该方法每次都会触发 UpdateTotalLength(),导致:
算法复杂度:从 O(n) 变成 O(n² log n)
排序次数:12,480 个点 = 78,000,000 次排序
性能损失:从 76 毫秒 → 12.5 秒(130倍慢)
修复方案:直接使用 Points.Add() 绕过昂贵的 UpdateTotalLength() 调用
2026-01-16 20:35:33 +08:00