# AutoCAD 家具导出插件 用于 AutoCAD 2024 的家具 3D 模型导出插件。当前主流程是按资产中心口径导出单板材、单组件或单五金件,用于后续辅助装配和规格款入库。 ## 功能特点 - **单资产导出** - `FEXPORT` 默认导出单板材、单组件或单五金件 - **板材语义保留** - 导出孔位、孔组、吸附图样和吸附面,供辅助装配使用 - **五金规格提取** - 单五金模式保留几何签名、图层类型和实例信息 - **整套兼容保留** - 旧整套家具导出迁移到 `FEXPORTPRODUCT` ## 系统要求 - AutoCAD 2024 - Windows 10/11 - 具备读取 `%AppData%\Autodesk\ApplicationPlugins` 的用户权限 ## 安装方法 ### 方法 1:手动安装发版包(推荐给产品/实施) 1. 完全关闭 AutoCAD 2024 2. 解压 `dist/家具导出插件-v2.6.0-一键安装版.zip` 3. 将整个 `FurnitureExporter.bundle` 文件夹复制到: ```text %AppData%\Autodesk\ApplicationPlugins\ ``` 最终目录应为: ```text %AppData%\Autodesk\ApplicationPlugins\FurnitureExporter.bundle\Contents\FurnitureExporter.dll ``` 4. 如果系统提示是否覆盖旧文件,选择“全部替换” 5. 重新打开 AutoCAD 2024 6. 输入命令 `FEXPORT`,能识别即表示安装成功 ### 方法 2:一键安装 双击 `dist/家具导出插件-v2.6.0-一键安装版/安装.bat` 脚本会自动: 1. 复制插件到 `%AppData%\Autodesk\ApplicationPlugins\FurnitureExporter.bundle` 2. 写入当前用户的 AutoCAD 自启动项 3. 追加插件目录到可信路径 ### 方法 3:一键编译(开发) 双击运行 `build.cmd` 或在 PowerShell 中执行 `.\build.ps1` 脚本会自动: 1. 检测 AutoCAD 2024 安装路径 2. 编译插件 3. 显示输出文件位置 如果自动检测失败,可以手动设置环境变量: ```cmd set ACAD_PATH=D:\你的路径\AutoCAD 2024 build.cmd ``` ### 方法 4:手动编译 ```bash # 设置 AutoCAD 路径(根据实际安装位置修改) set ACAD_PATH=C:\Program Files\Autodesk\AutoCAD 2024 # 编译 cd FurnitureExporter dotnet build -c Release ``` ### 临时加载(仅开发调试用) 1. 打开 AutoCAD 2024 2. 输入命令 `NETLOAD` 3. 选择 `FurnitureExporter\bin\Release\net48\FurnitureExporter.dll` ### 自动加载 将插件以 Bundle 形式放入 AutoCAD 插件目录,AutoCAD 启动时自动加载: ``` %AppData%\Autodesk\ApplicationPlugins\FurnitureExporter.bundle ``` 安装后无需重复配置,后续每次启动 AutoCAD 会自动加载插件。 ## 使用方法 ### FEXPORT - 导出单资产到资产中心 ``` 命令: FEXPORT ``` **操作步骤:** 1. **选择资产类型** - 板材 / 组件 / 五金 2. **选择实体** - 框选该单资产包含的 3D Solid 或图块,按 Enter 确认 3. **保存文件** - 选择 ZIP 保存位置 **输出文件:** `xxx_board_asset.zip` / `xxx_component_asset.zip` / `xxx_hardware_asset.zip`,包含: - `model.obj` - 单资产模型 - `hardware.json` - 单资产结构化数据,包含 `exportMode: "single_asset"` 与 `assetTypeHint` ### FEXPORTPRODUCT - 整套家具兼容导出 ``` 命令: FEXPORTPRODUCT ``` 仅用于旧产品链路兼容。新资产中心和辅助装配测试请优先使用 `FEXPORT`。 ### FINFO - 查看实体信息 ``` 命令: FINFO ``` 选择实体后显示其详细信息(类型、尺寸、图层等),用于调试。 ## 输出格式 ### hardware.json 示例 ```json { "version": "2.6", "exportedAt": "2026-05-11T10:30:00Z", "sourceFile": "桌腿.dwg", "software": "AutoCAD 2024", "pluginVersion": "2.6.0", "modelFile": "model.obj", "exportMode": "single_asset", "assetTypeHint": "COMPONENT", "sourceEntityCount": 1, "panelCount": 1, "snapPatterns": [], "snapSurfaces": [], "hardwareTypes": [] } ``` ## 工作流程 ``` 设计师 系统 ─────── ────── 1. 打开 DWG 文件 2. FEXPORT 3. 选择资产类型(板材/组件/五金) 4. 框选单个资产实体 ───────→ 5. 保存 ZIP ────────────────→ 上传到资产中心 ↓ 自动解析 ↓ 创建/更新资产族规格款 ↓ 保存到数据库 ↓ 辅助装配可用 ✓ ``` ## 开发 ### 编译 ```bash cd FurnitureExporter dotnet build -c Release ``` ### 调试 1. Visual Studio 打开项目 2. 设置调试程序为 `acad.exe`(AutoCAD 2024) 3. F5 启动调试 ### 项目结构 ``` FurnitureExporter/ ├── FurnitureExporter.csproj # 项目配置 ├── Commands.cs # AutoCAD 命令 ├── GlbExporter.cs # GLB 导出器 ├── HardwareAnalyzer.cs # 五金件分析器 └── Models.cs # 数据模型 ``` ## 常见问题 ### Q: 插件加载失败 - 确认 AutoCAD 版本为 2024 - 确认已安装 .NET 6.0 Runtime - 检查 DLL 路径是否包含中文 ### Q: 导出的模型显示不正确 - 确保板材是 3D Solid 实体 - 检查模型单位是否为毫米 ### Q: 五金件未被识别 - 确保五金件是 3D Solid 或图块引用 - 检查是否正确框选了五金件 ## 版本历史 ### v2.1.0 - 新增倒角和圆角检测功能 - 导出数据增加 `edgeFeatures` 字段 - 优化 Brep 分析性能 ### v2.0.0 - 新增孔位自动检测(通过 Brep API) - 新增五金件-孔位-板材智能关联 - 导出数据增加 `panels`、`holes` 字段 - 支持孔位用途推断(铰链孔、偏心轮孔等) ### v1.0.0 - 初始版本 - 支持板材 GLB 导出 - 支持五金件位置提取 - 自动按几何特征分组 ## 许可 MIT License