2.6 KiB
2.6 KiB
项目开发思路
1. 使用场景
- 在Navisworks中打开物流相关的楼层nwd文件(前提:将建筑按单独的楼层保存)
- 在物流控件中新建任务,任务包含一个物流场景的所有信息,支持保存和打开
- 选择物流运动模型(在物流模型文件列表中选择,可以是车辆、人员等,也可以选择自定义模型,指定长宽高),设置速度限制、安全距离等信息。
- 可以对运动模型经过的物流组件,指定物流类型(门、通道、电梯等),可以设置限高、限宽、限速等参数。
- 用物流导航控件,指定物流起点和终点,点自动吸附在通道表面,用颜色球表示。(移动过程可以使用Navisworks的漫游/飞行工具)
- 在物流导航控件中选择【生成路径】,自动生成从起点到终点的物流路径,包含一系列路径点和之间的连线,用颜色球和圆柱线表示。用标签显示路径的名称、长度、路径点数量等。
- 在物流导航控件中选择【仿真动画】,设置动画时长、速度、检测距离间隔、碰撞检测间隙后,点击运行,物流运动模型开始从起点沿着指定路径运动,如果发生碰撞,高亮显示物流模型和冲突模型,用标签显示速度、位置、碰撞数量等。
- 仿真动画结束,提交结果页面,显示各初始参数和统计信息。可以导出路径文件、导航地图和碰撞报告。
- 对生成的路径,可以进行手工编辑,修改各点位置和限制参数。
- 可以对修改后的路径,重新运行仿真动画。
2. 设计思路
2.1. UI
- 用浮动控件做物流导航控件
- 用停靠窗口做物流控件
2.2. 自动路径生成
- 用Field D*算法进行路径规划
2.3. 仿真动画
- 用变换实现物流物体的移动,同时进行碰撞检测
- 动画按固定帧率(如30帧)进行,碰撞检测按检测距离间隔进行
- 【可选】碰撞检测结果同步到ClashDetective
2.4. 导航地图
- 导航地图可以用俯视图加路径生成图片
- 导航视频可以用视点动画生成
2.5. 分层保存
- 可以按楼层搜索,保存选择项
- 按物流属性搜索,保存选择项
- 保存当前选择项
2.5. 物流属性
- 子节点继承父节点的物流属性,不直接设置
编译命令
& "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" NavisworksTransportPlugin.csproj /p:Configuration=Debug /p:Platform=AnyCPU /verbosity:minimal