# NavisworksTransport 插件项目概述 ## 项目简介 NavisworksTransport 是一个用于 Autodesk Navisworks Manage 2026 的插件,专为物流路径规划和动画仿真而设计。它能够帮助用户在复杂的建筑模型中定义物流通道、规划运输路径,并生成动画来模拟设备移动过程,同时进行动态碰撞检测。 ## 技术架构 - **编程语言**: C# 7.3 - **开发环境**: .NET Framework 4.8 - **主要依赖**: - Autodesk Navisworks API (2026版本) - Roy-T.AStar (路径规划算法) - System.Data.SQLite (数据存储) - Tomlyn (TOML配置文件解析) - geometry4Sharp (3D几何计算) ## 核心功能模块 ### 1. 物流属性管理 - 为模型元素分配物流类别属性(如门、电梯、楼梯、通道、障碍物) - 批量处理多个选中项目 - COM API 集成确保属性正确添加 ### 2. 路径规划 - 手动路径点编辑 - 自动路径规划 (A*算法) - 2.5D网格地图生成 - 路径优化和分析 ### 3. 动画与仿真 - 基于路径的动画生成 - TimeLiner 集成 - 动态碰撞检测 (Clash Detective集成) ### 4. 可视化 - 3D路径点和路线渲染 - 网格地图可视化 - 碰撞结果高亮显示 ### 5. 数据管理 - SQLite数据库存储路径数据 - TOML配置文件管理系统设置 ## 项目结构 ```graph NavisworksTransport/ ├── src/ │ ├── Commands/ # 命令模式实现 │ ├── Core/ # 核心业务逻辑 │ │ ├── Animation/ # 动画管理 │ │ ├── Collision/ # 碰撞检测 │ │ ├── Config/ # 配置管理 │ │ ├── Properties/ # 属性管理 │ │ ├── Spatial/ # 空间索引 │ │ └── UIUpdate/ # UI更新管理 │ ├── PathPlanning/ # 路径规划算法 │ ├── UI/ ├── WPF/ # WPF用户界面 │ └── Utils/ # 工具类 ├── doc/ # 文档 ├── packages/ # NuGet包 └── tests/ # 单元测试 ``` ## 构建与运行 1. **环境要求**: - Windows 7 或更高版本 - Navisworks Manage 2026 - .NET Framework 4.8 2. **构建步骤**: - 使用 Visual Studio 打开 `NavisworksTransport.sln` - 还原 NuGet 包 - 编译解决方案 3. **部署**: - 编译生成 `NavisworksTransportPlugin.dll` - 插件会自动安装到Navisworks插件目录: `[Navisworks安装路径]\Plugins\NavisworksTransportPlugin\` - 重启Navisworks即可使用 ## 开发约定 - 使用MVVM模式进行UI开发 - 通过Command模式封装业务逻辑 - 利用PathPlanningManager作为核心业务逻辑协调器 - 配置文件使用TOML格式 - 日志记录使用内置的LogManager - 异常处理通过GlobalExceptionHandler统一管理 ## 核心组件说明 - **MainPlugin**: 插件入口点,负责初始化和生命周期管理 - **PathPlanningManager**: 路径规划核心业务逻辑管理器 - **CategoryAttributeManager**: 物流属性管理 - **PathPointRenderPlugin**: 3D路径可视化渲染 - **ConfigManager**: 系统配置管理 - **UIStateManager**: UI状态和线程安全更新管理