项目描述

本项目主要目的是解决工作中遇到的一个实际问题,代码可能很ugly,但是以实用为目的,本文对整个实现过程进行详细总结,希望能对有类似需求的朋友提供一个参考。本项目主要需要实现如下功能:

  1. 可能有很多份AutoCAD .dwg图纸,希望替换这些图纸中的所有块参照(Block Reference),并保留原块中的某些属性,当然,要对块的具体形式进行判断。
  2. 不用打开每份CAD图纸实现一键进行批量替换。

为了更清晰的说明,特上传如下图片,很多份.dwg图纸中都包含类似如下的块参照(Block Reference)

图中所有圆圈即为一个块参照(Block Reference),但是有多种类型,比如S004的块参照(Block Reference),具体如下:

而块参照C002的属性如下图:

对S004和S006来说,其块参照的名字是类似的,只是S004的块参照名字为TCDNS-R, 而S006的块参照为TCDNS-L,只是L(left)和R(right)的区别。
而对C002来说,其块参照的名字为TCDNC-R,前面TCDN是一致的,只是第五个字符由S变成C而已。
无论哪种块参照,属性中都含有一个EID属性,项目的目的就是要把除EID外的属性删掉,只保留并显示此EID。
本项目希望替换后的效果如下图:

项目的基本情况及要实现的目的已经基本交代清楚,下面来具体一步步实现。

AutoCAD C# 二次开发项目----批量替换块(1)相关推荐

  1. AutoCAD C# 二次开发项目----批量替换块(2)

    项目总体规划 考虑到项目需求,决定采用AutoCAD中的Accoreconsole.exe+.Net Dll来实现,对Accoreconsole不太了解的同学可以自行百度,总之一句话,要想高效的批量处 ...

  2. 利用C#进行AutoCAD的二次开发(转)

    众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectArx,VBA,VLisp.但它们的优缺点是显而易见的:ObjectArx功能强大,编程效率高,但它的缺点是编程者必须掌握VC++, ...

  3. 利用C#进行AUTOCAD的二次开发

    众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectArx,VBA,VLisp.但它们的优缺点是显而易见的:ObjectArx功能强大,编程效率高,但它的缺点是编程者必须掌握VC++, ...

  4. 《深入浅出AutoCAD.NET二次开发》教程(含光盘)

    <深入浅出AutoCAD.NET二次开发>教程(含光盘)-中国建筑工业出版社出版 一本系统介绍.NET环境二次开发AutoCAD的教程,适合工程技术人员作为入门读物也适合研发工程师作为工作 ...

  5. 利用C#进行AutoCAD的二次开发(二)

    大家好,今天我继续给各位介绍利用C#进行AutoCAD的二次开发.在这一讲中,主要介绍上一讲例子中存在的问题. 在上一次的例子中我是通过引用AutoCAD 2004 Type Library来进行C# ...

  6. autocad python二次开发_基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术

    AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...

  7. 基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术

    AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...

  8. lisp 焊缝_焊接领域中 AutoCAD的二次开发

    焊接领域中 AutoCAD 的二次开发 祁文军 ; 方建疆 ; 袁逸萍 ; 周建平 [摘 要] 应用 AutoCAD 已有的二次开发工具 :AutoLISP .块和形定义及菜单开发 对 CAD 在焊接 ...

  9. 利用C 进行AutoCAD的二次开发

    利用C#进行AutoCAD的二次开发(一) 呵呵,把自己前在网上以表的文章放到这里. 利用C#进行AutoCAD的二次开发(一) 众所周知,对AutoCAD进行二次开发用到的主要工具有:ObjectA ...

最新文章

  1. mybatis返回某一字段_8.mybatis的基本工作流程(2.0)※
  2. 何时使用hadoop fs、hadoop dfs与hdfs dfs命令
  3. Debian下措置惩罚上网慢的成绩
  4. 变量“componentresourcemanager”未声明或从未赋值_频繁出现在面试题中,却容易被人遗忘:变量、基本数据类型...
  5. jsp与servlet的区别以及jsp的四个作用域
  6. c++ 以当前时间为文件名打印日志
  7. rabbitmq版本升级
  8. CPT203 软件工程开发 笔记
  9. js仿照 蚂蚁森林 效果
  10. RF:Robot命令行工具帮助文件中文译版(个人翻译)
  11. 怎么录制明日之后游戏视频
  12. 面试产品经理时如何回答“为什么想做产品经理”这个问题
  13. 贝叶斯系列:(三)贝叶斯网络
  14. Linux安装tomcat,配置环境变量
  15. Mysql,SQL server中英文翻译对照
  16. java实现md5的验证
  17. 雨课堂知识点总结(九)
  18. Linux下实现文件加密解密
  19. 渗透测试工具之Layer子域名挖掘机
  20. video 满屏显示_HTML5 video播放器全屏(fullScreen)实现的方法

热门文章

  1. 声控助手_我从构建声控机器人获得的见解
  2. 王者荣耀转系统服务器繁忙,手游王者荣耀转系统会失去什么详细讲解
  3. Libera天使之翼合唱团
  4. 小米mix2安兔兔html5跑分,小米MIX 2S跑分多少?高通骁龙845安兔兔跑分实测
  5. 高德发布物流行业LBS解决方案
  6. 【GPLT】L1-047 装睡
  7. 智能农机上天入地,无人化真是未来农业的风口吗?
  8. 全球安防盛会 CPSE安博会2021强势回归
  9. 小马赠书【第8期】清华社 618 IT BOOK 多得活动(送书5本)
  10. C#数据库教程7-ADO.NET三层架构和数据库DBNull问题