当前位置: 首页 > article >正文

批量导出CAD属性块信息生成到excel——CAD C#二次开发(插件实现)

本插件可实现批量导出文件夹内大量dwg文件的指定块名的属性信息到excel,效果如下:

插件界面:

 dll插件如下:

使用方法:

1、获取此dll插件。 

2、cad命令行输入netload ,加载此dll(要求AutoCAD,2018-2024版本).

3、cad命令行输入K2E,根据弹出界面内容提示,输入块名和并选择dwg文件,生成excel即可。

附部分代码:

     public static void Demo2(){Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;Database db = doc.Database;Editor ed = doc.Editor;string defaultValue = "新块";string promptMsg = $"\n请输入要提取属性的块参照名称 [{defaultValue}]";// 创建提示选项PromptStringOptions pso = new PromptStringOptions(promptMsg);pso.AllowSpaces = true;  // 允许输入包含空格PromptResult pr = ed.GetString(pso);if (pr.Status != PromptStatus.OK) return;// 获取用户输入并处理默认值string userInput = pr.StringResult.Trim();string targetBlockName = string.IsNullOrEmpty(userInput)? defaultValue: userInput;// 步骤2:获取目标块定义的属性标签List<string> targetAttrTags = GetBlockAttributeTags(db, targetBlockName);if (targetAttrTags.Count == 0){ed.WriteMessage("\n目标块定义中没有属性或块不存在!");return;}//步骤3:创建Excel并写入数据Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();Workbook workbook = excelApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);Worksheet worksheet = (Worksheet)workbook.Worksheets[1];excelApp.Visible = true; // 设置Excel可见// 写入表头(序号+属性标签)List<string> headers = new List<string> { "序号" };headers.AddRange(targetAttrTags);for (int col = 1; col <= headers.Count; col++){worksheet.Cells[1, col] = headers[col - 1];}// 步骤4:遍历图形中的块参照并提取属性值
******
}

插件获取方式:↓↓↓

http://www.lryc.cn/news/2396813.html

相关文章:

  • 可视化大屏如何制作
  • Goreplay最新版本的安装和简单使用
  • Android Studio 解决报错 not support JCEF 记录
  • SMT高速贴片机核心技术深度剖析
  • sigmastar实现SD卡升级
  • kafka学习笔记(三、消费者Consumer使用教程——配置参数大全及性能调优)
  • yarn、pnpm、npm
  • JVM——Truffle:语言实现框架
  • C++ STL vector容器详解:从原理到实践
  • 视频压制(Video Encoding/Compression)
  • 【论文笔记】Transcoders Find Interpretable LLM Feature Circuits
  • 音视频融合中的语音分离技术实现
  • 每天总结一个html标签——a标签
  • 在Babylon.js中创建3D文字:简单而强大的方法
  • CSS 渐变完全指南:从基础概念到实战案例(线性渐变/径向渐变/重复渐变)
  • 初识Docker:容器化技术的入门指南
  • android binder(1)基本原理
  • 行业分析---小米汽车2025第一季度财报
  • 边缘计算网关支撑医院供暖系统高效运维的本地化计算与边缘决策
  • GO环境配置
  • `docker run`、`docker start`、`docker exec` 区别
  • 简单了解string类的特性及使用(C++)
  • FastAPI+Pyomo实现线性回归解决饮食问题
  • 16.FreeRTOS
  • Redis最佳实践——购物车优化详解
  • 【计算机网络】传输层UDP协议
  • 安全漏洞修复导致SpringBoot2.7与Springfox不兼容
  • 从法律层面剖析危化品证书:两证一证背后的安全逻辑
  • C语言——获取变量所在地址(uint8和uint32的区别)
  • 2 Studying《Effective STL》