4.4 KiB
4.4 KiB
Clash Detective 集成效果查看指南
问题说明
您遇到的问题是"测试通过了,但在Clash Detective窗口中看不到新内容"。这是因为我们的集成方式和显示机制需要正确理解。
当前集成方式详解
1. 集成架构
我们的集成采用了双重架构:
动画管理器 -> ClashDetectiveIntegration -> .NET API + COM API -> Clash Detective窗口
- 动画播放时: 自动检测碰撞并创建测试结果
- 测试按钮: 验证集成功能并强制显示结果
- 窗口同步: 多种方式刷新Clash Detective显示
2. 集成的具体表现
A. 测试创建
- ✅ 自动创建名为 "动态运输路径碰撞检测" 的测试
- ✅ 测试会出现在Clash Detective的测试列表中
- ✅ 测试参数:硬碰撞、1cm容差
B. 结果显示
- ✅ 碰撞结果会添加到测试中
- ✅ 3D视图中高亮显示碰撞对象(红色)
- ✅ 日志记录详细的检测信息
C. 窗口同步
- ✅ 自动刷新Clash Detective界面
- ✅ 运行所有测试以触发更新
- ✅ 强制重绘3D视图
如何查看集成效果
方法1:检查测试列表
- 打开 Clash Detective 窗口
- 查看左侧的测试列表
- 寻找 "动态运输路径碰撞检测" 项
- 点击该测试查看详细信息
方法2:查看测试结果
- 在测试列表中选择我们的测试
- 查看右侧的结果面板
- 结果会显示碰撞的对象名称和状态
- 双击结果可以定位到3D视图
方法3:监控日志输出
- 查看日志文件:
%USERPROFILE%\Documents\NavisworksTransport\Logs\ - 搜索关键词:
- "Clash Detective"
- "动态运输路径碰撞检测"
- "碰撞检测完成"
- "同步结果到Clash Detective"
方法4:使用新的测试按钮
- 点击 "测试Clash Detective集成" 按钮
- 查看弹出的详细信息对话框
- 按照提示检查Clash Detective窗口
可能的显示问题及解决方案
问题1:测试列表中没有看到我们的测试
可能原因:
- Clash Detective窗口未刷新
- 测试创建失败
- 权限问题
解决方案:
- 关闭并重新打开Clash Detective窗口
- 点击 "测试Clash Detective集成" 按钮强制刷新
- 查看日志了解详细错误信息
问题2:测试存在但无结果
可能原因:
- 动画对象与其他对象无碰撞
- 选择集设置不正确
- 测试参数过于严格
解决方案:
- 确保动画对象与其他对象有重叠
- 调整碰撞容差(当前为1cm)
- 使用测试按钮执行强制检测
问题3:3D视图中看不到高亮
可能原因:
- 高亮颜色与背景相似
- 临时材质被清除
- 视图渲染问题
解决方案:
- 改变视图背景颜色
- 重新运行动画
- 检查日志中的高亮信息
调试和验证步骤
1. 基础验证
1. 加载包含多个对象的模型
2. 启动插件并打开Clash Detective
3. 点击"测试Clash Detective集成"按钮
4. 查看弹出对话框的详细信息
2. 动画验证
1. 设置动画对象和路径
2. 启用"碰撞检测"选项
3. 播放动画
4. 观察3D视图中的红色高亮
5. 检查Clash Detective窗口的更新
3. 日志分析
1. 打开日志文件
2. 搜索集成相关信息
3. 查看详细的状态报告
4. 确认测试创建和结果数量
集成效果的预期表现
正常情况下您应该看到
- 测试列表:出现 "动态运输路径碰撞检测" 项
- 结果面板:显示检测到的碰撞结果
- 3D视图:碰撞对象显示红色高亮
- 日志信息:记录详细的检测过程
- 状态报告:测试按钮提供的详细信息
如果仍然看不到效果
- 检查Navisworks版本是否为2017
- 确认Clash Detective插件已正确安装
- 验证模型中是否有足够的几何对象
- 尝试手动创建一个简单的碰撞测试作为对比
- 联系技术支持并提供日志文件
技术细节
我们的集成方式
- 使用 .NET API 创建和管理碰撞测试
- 使用 COM API 访问底层功能
- 通过多种方式刷新窗口显示
- 提供详细的状态监控和日志记录
与标准用法的区别
- 动态创建测试而非预定义
- 实时更新结果而非批处理
- 集成到动画循环中而非独立运行
- 提供自动化的可视化反馈
这种集成方式确保了动画播放过程中的实时碰撞检测,同时保持与Clash Detective原生界面的兼容性。