# Navisworks 物流类别属性插件使用说明

## 功能概述

本插件为Navisworks 2017提供物流类别属性分配功能，可以为选定的模型项目添加预定义的物流相关属性，用于后续的路径规划和筛选操作。

## 支持的物流类别

插件预定义了以下5种物流元素类型：

1. **门** - 可通行元素
2. **电梯** - 可通行元素  
3. **楼梯** - 可通行元素
4. **通道** - 可通行元素
5. **障碍物** - 不可通行元素

每个类别会自动设置两个属性：

- **元素类型**：显示具体的类别名称（如"门"、"电梯"等）
- **可通行**：显示该元素是否可通行（True/False）

## 使用方法

### 1. 启动插件

- 在Navisworks 2017中，点击"附加模块"选项卡
- 找到并点击"Transport Plugin"按钮

### 2. 选择模型项目

- 在启动插件前，先在3D视图中选择要设置属性的模型项目
- 可以选择单个或多个项目（支持批量操作）

### 3. 设置类别属性

- 插件窗口会显示当前选中的项目数量
- 点击相应的类别按钮（如"设为门"、"设为电梯"等）
- 系统会自动为所有选中的项目添加相应的物流属性

### 4. 修改已有属性

- 在物流模型列表中选择要修改的模型
- 点击"修改类别"按钮
- 在弹出的编辑对话框中修改属性值：
  - 元素类型：选择新的物流类型
  - 可通行：设置是否可通行
  - 优先级：设置1-10的优先级值
  - 物体尺寸：选择适用的物体尺寸
  - 速度限制：设置速度限制值
- 点击"确定"保存修改

### 5. 删除物流属性

- 在物流模型列表中选择要删除属性的模型
- 点击"清除属性"按钮
- 确认删除操作，整个"物流属性"类别将被完全移除
- **重要**：删除操作会完全移除属性类别，不会在属性面板中留下空的类别

### 6. 查看设置结果

- 操作完成后会显示成功处理的项目数量
- 可以在Navisworks的属性面板中查看添加的"物流属性"类别
- 不同类型的模型会显示不同的颜色标记

## 属性查看

设置完成后，可以通过以下方式查看添加的属性：

1. 选择已设置属性的模型项目
2. 打开Navisworks的"属性"面板
3. 在属性列表中找到"物流分类"类别
4. 查看其中的"元素类型"和"可通行"属性值

## 颜色标记说明

设置物流属性后，不同类型的模型会显示不同的颜色标记：

- **门**：蓝色
- **电梯**：紫色
- **楼梯**：橙色
- **通道**：绿色
- **障碍物**：红色
- **装卸区**：黄色
- **停车位**：灰色
- **检查点**：青色

## 功能特性

### 完整的属性管理

- **添加属性**：为模型设置完整的物流属性信息
- **修改属性**：通过图形界面编辑现有属性值
- **删除属性**：完全移除模型的物流属性
- **批量操作**：支持同时处理多个模型

### 丰富的属性信息

每个物流属性包含以下信息：

- **类型**：8种预定义的物流元素类型
- **可通行**：布尔值，表示是否允许通行
- **优先级**：1-10的数值，用于路径规划
- **物体尺寸**：适用的物体尺寸限制
- **速度限制**：通行速度限制（km/h）

### 可视化支持

- **颜色标记**：不同类型的模型显示不同颜色
- **列表管理**：在插件界面中查看和管理所有物流模型
- **实时更新**：属性修改后立即更新显示

## 注意事项

1. **选择项目**：使用插件前必须先选择要设置属性的模型项目
2. **属性覆盖**：修改操作会覆盖现有的物流属性
3. **删除确认**：删除操作不可撤销，请谨慎操作
4. **批量操作**：支持同时为多个项目设置相同的类别属性
5. **兼容性**：专门为Navisworks 2017和Windows 7环境设计

## 错误处理

- 如果未选择任何项目，插件会提示"请先选择要设置属性的模型项"
- 如果操作过程中出现错误，会显示详细的错误信息
- 部分项目处理失败时，会显示成功和失败的数量统计

## 技术特性

- **COM API集成**：使用Navisworks COM API确保属性正确添加到模型项目
- **用户友好界面**：简洁的按钮式界面，操作直观
- **批量处理**：支持同时处理多个选中的模型项目
- **错误恢复**：单个项目失败不会影响其他项目的处理

## 后续应用

设置的物流类别属性可用于：

- 模型项目的筛选和分类
- 路径规划算法的障碍物识别
- 可见性控制和分层显示
- 导出到其他系统（如DELMIA）进行进一步分析

## 版本信息

- **插件版本**：1.1
- **支持平台**：Windows 7 + Navisworks 2017
- **开发框架**：.NET Framework 4.6.2

## 更新日志

### v1.1 (2025-06-22)

- **修复**：删除物流属性功能现在能完全移除属性类别，不再留下空的"物流属性"类别
- **改进**：使用正确的COM API方法`RemoveUserDefined`实现真正的属性删除
- **优化**：改进了用户定义属性索引的计算逻辑，确保删除操作的准确性
