NavisworksTransport/.serena/memories/project_overview.md

35 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# NavisworksTransport 项目概览
## 项目目标
NavisworksTransport是一个Navisworks 2026插件专门用于在3D建筑模型中进行物流路径规划和运输冲突检测。主要功能包括
- 路径优化和规划
- 碰撞检测
- 沿定义路径的动画对象移动
- A*寻路算法集成
- 时间轴动画集成
## 技术栈
- **平台**: Navisworks 2026 (.NET 4.8, x64)
- **语言**: C#
- **UI框架**: WPF + WinForms混合架构
- **API**: Navisworks Native API + COM API
- **项目格式**: 旧式csproj (使用Reference Include非PackageReference)
- **包管理**: packages.config手动管理
- **寻路算法**: RoyT.AStar库
- **数据序列化**: JSON
## 核心架构模式
### 三重插件架构
1. **MainPlugin.cs**: 主AddInPlugin包含Ribbon UI和DockPane集成
2. **PathClickToolPlugin.cs**: ToolPlugin处理3D鼠标交互和点击
3. **PathPointRenderPlugin.cs**: RenderPlugin提供3D可视化覆盖
### UI架构
- **WPF组件**: 现代MVVM控件在`src\UI\WPF\`
- **WinForms对话框**: 传统属性编辑界面
- **ElementHost集成**: WPF嵌入Navisworks环境
## 当前状态
- 专注Navisworks 2026开发无需向后兼容
- 存在严重UI线程安全问题导致频繁崩溃
- 正在进行UI架构重构以解决线程安全问题