|
|
aa0557c9e6
|
修改系统配置的问题。
|
2025-12-31 11:29:21 +08:00 |
|
|
|
93135d3c29
|
增加了路径曲线化的方案,实现了基础的曲线化路径数据结构和存储,以及曲线化核心算法
|
2025-12-30 18:29:41 +08:00 |
|
|
|
7c319b199f
|
增加转弯路径曲线化方案
|
2025-12-30 14:40:37 +08:00 |
|
|
|
f3a07eb482
|
实现路径坐标点手动编辑功能
|
2025-12-30 09:55:36 +08:00 |
|
|
|
0c1de9b45d
|
纠正生成动画第一帧旋转的bug
|
2025-12-26 09:40:02 +08:00 |
|
|
|
0d2a240499
|
让虚拟车辆选择后直接放到起点
|
2025-12-25 18:11:36 +08:00 |
|
|
|
736e6e8448
|
修改移动物体初始角度不对的问题
|
2025-12-25 17:48:49 +08:00 |
|
|
|
dab8dc34c3
|
修复程序崩溃的bug;完善未完成的功能清单
|
2025-12-25 15:04:40 +08:00 |
|
|
|
5647ae9134
|
修复ClashDetective碰撞结果列表项名字只有一半的问题
|
2025-12-19 18:17:26 +08:00 |
|
|
|
ccdada3aad
|
修复部分墙和柱子检测不到的问题
|
2025-12-19 17:44:12 +08:00 |
|
|
|
d9c2ec8c12
|
修复路径列表UI触发事件引起事件循环的问题
|
2025-12-19 14:17:20 +08:00 |
|
|
|
d63896bf63
|
基本实现物流对象沿着路径转向的功能
|
2025-12-19 10:13:41 +08:00 |
|
|
|
2bd117ff8a
|
重构了高亮显示的逻辑,统一处理流程。
|
2025-12-11 13:23:55 +08:00 |
|
|
|
adde6cbdf4
|
直接控制指定对象的高亮;调整样式,修复选择对象因为GUID加不上的问题
|
2025-12-11 11:38:40 +08:00 |
|
|
|
2a8425d529
|
基本实现手工指定碰撞检测对象
|
2025-12-11 10:52:09 +08:00 |
|
|
|
7446431f9c
|
增加了虚拟物流车辆动画生成和碰撞检测功能
|
2025-12-10 16:59:35 +08:00 |
|
|
|
e5b8501a63
|
将ClashDetective检测模式从HardConservative改为Hard,提高检测性能
|
2025-12-10 14:36:06 +08:00 |
|
|
|
23801726ab
|
临时测试对象引用无效,回复未优化ClashDetective测试的版本;
|
2025-12-10 13:23:24 +08:00 |
|
|
|
a19e5f91f3
|
修改了第一个路径导出路径按钮没激活,无法导出的BUG
|
2025-12-09 17:14:55 +08:00 |
|
|
|
941bade44a
|
复用ClashTest,大幅优化碰撞检测性能
|
2025-12-09 10:51:11 +08:00 |
|
|
|
393e1c7291
|
碰撞检测时,只处理可见对象,大幅优化性能。
|
2025-12-09 10:06:08 +08:00 |
|
|
|
4736372552
|
修改了碰撞性能优化记录文档
|
2025-12-08 17:24:42 +08:00 |
|
|
|
01f200ca60
|
改进了动画预计算的几何缓存和空间索引缓存方法,提高了50%的性能。大型模型(50万)提高到120秒
|
2025-12-08 17:21:34 +08:00 |
|
|
|
12616629b0
|
清理多余的动画检测实时计算代码
|
2025-12-08 15:04:16 +08:00 |
|
|
|
f8320066c1
|
优化碰撞检测算法,进行合理的去重后再检测;优化动画控制逻辑,避免重复订阅事件和资源清理;
|
2025-12-08 12:31:12 +08:00 |
|
|
|
a832e91b7b
|
修改了保存当前选择集无响应的bug,去掉了多余的子节点展开代码
|
2025-12-05 17:48:58 +08:00 |
|
|
|
a552ea3a1d
|
不跟踪nuget.exe
|
2025-12-01 11:40:52 +08:00 |
|
|
|
18d6fa65fe
|
不跟踪nuget.exe
|
2025-12-01 11:40:25 +08:00 |
|
|
|
221e13cb5a
|
更新项目进度评估报告
|
2025-12-01 11:35:44 +08:00 |
|
|
|
1cf5816cb4
|
版本升级到 0.14.0
|
2025-12-01 11:12:55 +08:00 |
|
|
|
811b815082
|
删除不必要的文件
|
2025-11-21 10:45:38 +08:00 |
|
|
|
ca4488dcb8
|
根据安装程序的要求,更新项目文件,目标平台为x64,项目设置为Release
|
2025-11-18 18:27:40 +08:00 |
|
|
|
fee00dfb82
|
增加MSI安装程序生成指南,修改README.md
|
2025-11-17 12:49:35 +08:00 |
|
|
|
5e1e4b04b2
|
对项目完成度进行了评估,列出报告;实现了JSON路径文件导入功能。
|
2025-11-07 15:13:28 +08:00 |
|
|
|
330f6591a2
|
删除多余的引用
|
2025-10-21 18:48:27 +08:00 |
|
|
|
80975b829a
|
删除多余的引用
|
2025-10-21 18:47:55 +08:00 |
|
|
|
fbe46ebc85
|
使用场景加载完成事件SceneLoaded实现文档更新后的物流列表刷新
|
2025-10-21 18:22:23 +08:00 |
|
|
|
b0a63409b9
|
删除一些多余代码,注释掉文档更新刷新物流元素列表代码
|
2025-10-21 17:44:35 +08:00 |
|
|
|
dba1f76f0a
|
增加了几何体缓存文件支持
|
2025-10-20 10:39:21 +08:00 |
|
|
|
55fbcbdb48
|
将网格点可视化从球和立方体,改为圆形和正方形
|
2025-10-18 16:43:17 +08:00 |
|
|
|
9c97633411
|
增加网格点可视化类型,立方体(可用)、点(不可用)
|
2025-10-17 18:47:35 +08:00 |
|
|
|
fb13b81259
|
增加iFlow的文档
|
2025-10-17 14:29:48 +08:00 |
|
|
|
5791e57192
|
对系统管理UI进行修改,更改体素路径测试参数
|
2025-10-14 17:19:17 +08:00 |
|
|
|
3aaa176ce6
|
优化插件启动时的动作
|
2025-10-14 16:29:05 +08:00 |
|
|
|
b7a112354d
|
merge: 集成空间索引优化碰撞检测性能
- 新增空间哈希网格系统(SpatialHashGrid + SpatialIndexManager)
- 优化碰撞检测查询效率(从O(n)到O(1)平均复杂度)
- 格子大小使用车辆宽度参数(1米),空间分割166格
- 平均每格1.71个对象,查询性能提升约10倍
- 移除DataBindingPerformanceMonitor功能(简化代码)
- 修复碰撞报告检测间隙显示格式
- 净删除代码511行,提升代码质量
测试结果:
- 空间索引构建时间:10ms(冷启动)/ 1ms(缓存)
- 284个对象分布在166个格子中
- 碰撞检测性能显著提升
|
2025-10-14 15:18:36 +08:00 |
|
|
|
b05bb727c6
|
refactor: 完成 DataBindingPerformanceMonitor 功能的完整删除
- 删除 DataBindingPerformanceMonitor.cs 文件
- 从 NavisworksTransportPlugin.csproj 移除编译引用
- 清理 ViewModelBase.cs 中的所有性能监控代码
- 清理 ThreadSafeObservableCollection.cs 中的性能监控集成
- 清理 SmartDataBindingOptimizer.cs 中的性能监控使用
- 清理 BindingExpressionOptimizer.cs 中的性能监控调用
该功能不再需要,移除后简化了代码结构
|
2025-10-14 15:01:26 +08:00 |
|
|
|
821725d406
|
perf: 优化空间索引格子大小,使用车辆宽度参数
问题分析:
1. 原实现使用运动对象包围盒最大边(6-8米)作为格子大小
2. 导致格子过大(仅10-21个格子),每格包含13-28个对象
3. 空间查询效率低,需检查大量候选对象
优化方案:
1. 改用系统配置中的车辆宽度(VehicleWidthMeters,默认1米)
2. 预期效果:格子数增加到150-200个,每格2-5个对象
3. 显著提升空间查询效率
搜索半径说明:
- 当前实现 objectDiagonal/2 + detectionGap 是正确的
- 从中心到最远角的距离恰好是对角线的一半
- 不需要修改
修改文件:
- PathAnimationManager.cs:
- 添加 ConfigManager 引用
- 使用车辆宽度计算格子大小
- 添加详细日志输出
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-14 14:43:15 +08:00 |
|
|
|
40072e2eb7
|
fix: 格式化碰撞报告窗口中检测间隙的显示
问题:检测间隙显示为0.05001768,精度过高不便阅读
解决:在XAML绑定中添加StringFormat={}{0:F2}格式化为两位小数
效果:现在显示为0.05,清晰易读
修改文件:
- CollisionReportDialog.xaml: 为DetectionGap绑定添加格式化
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-14 12:33:07 +08:00 |
|
|
|
02ddc812cf
|
refactor: 移除未使用的 IsChannelObjectPublic 方法
优化历程:
1. 最初添加 IsChannelObjectPublic() 用于空间索引中逐个检查对象
2. 后续优化为 GetNonChannelGeometryItemsCache() 在缓存层预过滤通道
3. IsChannelObjectPublic() 方法已不再被使用,删除以保持代码整洁
私有方法 IsChannelObject() 保留,仍在缓存构建时使用
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-14 12:28:43 +08:00 |
|
|
|
1fb6c565fd
|
perf: 优化空间索引构建,直接使用预过滤的非通道缓存
问题分析:
- 空间索引获取290个几何对象缓存
- 然后遍历290次,每次调用 IsChannelObjectPublic() 检查是否为通道
- 使用 HashSet.Contains 虽然是O(1),但遍历290次仍然是O(n)
- 通道对象在缓存构建阶段已经识别,不应该重复判断
优化方案:
1. 添加 GetNonChannelGeometryItemsCache() 方法返回已过滤通道的缓存
2. 在 ClashDetectiveIntegration 中一次性过滤(使用LINQ Where)
3. SpatialIndexManager 直接使用284个非通道对象,无需再判断
4. 移除 IsChannelObjectPublic() 方法和相关逻辑(不再需要)
性能提升:
- 空间索引构建:减少290次 HashSet 查询
- 代码更简洁:从遍历+判断改为直接使用预过滤结果
- 逻辑更清晰:通道过滤在缓存层完成,索引层只负责索引
技术细节:
- GetNonChannelGeometryItemsCache() 使用 LINQ Where 过滤
- 线程安全:使用 lock 确保并发访问安全
- 日志优化:明确标注"通道已在缓存阶段过滤"
代码清理:
- 移除 IsChannelObjectPublic() 的使用(不再需要)
- 移除 channelExcludedCount 变量
- 简化索引构建循环逻辑
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-10-14 12:25:59 +08:00 |
|