利用AutoCADVBA二次开发解决深圳市水利基金项目排水管线成图问题.doc_第1页
利用AutoCADVBA二次开发解决深圳市水利基金项目排水管线成图问题.doc_第2页
利用AutoCADVBA二次开发解决深圳市水利基金项目排水管线成图问题.doc_第3页
利用AutoCADVBA二次开发解决深圳市水利基金项目排水管线成图问题.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

利用AutoCAD VBA二次开发解决深圳市水利基金项目排水管线成图问题赖东杰 深圳市水务规划设计院,广东,深圳 518000【摘要】:AutoCAD VBA是AutoCAD和Visual Basic的结合技术,利用它可以完成AutoCAD的二次开发工作,本文重点讲述的是利用VBA二次开发,将管线基本信息写入块属性中,实现在AutoCAD图上就能直观显示管线的基本参数,方便管线图使用,提高工作效率。【关键词】:AutoCAD;Visual Basic;VBA;DAO;管线图;块属性。Application of AutoCAD VBA Secondary Development in Pipeline DrawingsLai Dongjie Shenzhen Water Planning and Design Institute, 518000,Shenzhen,Guangdong, China Abstract:AutoCAD VBA is a combination of AutoCAD software and Visual Basic programming language, which can be used to complete AutoCAD secondary development. This paper focuses on how to write the basic information of pipeline into block properties through AutoCAD VBA programming.After that,the basic parameters of pipeline would be directly displayed on AutoCAD drawings,which benefits the use of pipeling drawings and improves work efficiency. Key words: AutoCAD;Visual Basic;Microsoft Visual Basic for Applications;Data Access Objects;Pipeline Drawing;Block property.一 前言为加快水务建设步伐,提高防洪抗灾能力,缓解我市水资源供需矛盾,促进国民经济持续、快速、健康发展,为深圳建设一流的现代化国际性城市创造良好的水环境,广东省深圳市人民政府专门设立水利建设基金,从市收取的政府性基金中提取3用于水务建设的专项资金。水利基金项目在AutoCAD R14版本中,Autodesk公司首次包括了Microsoft的Visual Basic forApplications(VBA)新技术,将AutoCAD和Visual Basic的功能结合在一起,在R14以后的版本(AutoCAD2000、2002、2004、2008和2010等)中我们均可以利用VBA二次开发技术定制应用程序,实现一些在AutoCAD不能或不易实现的功能和效果。在管线图的使用过程中,会经常遇到这样的一个困扰,管线图上显示出来的信息往往不能够反映全部管线参数,很多管线参数需要到管线点成果表中查询才能够知道,这种图和数据两边不能够关联互通需要来回不停切换查询,使用起来非常不便,影响工作效率不说,还容易因此查错、对错数据也不在少数。为了解决这个难题,我在平时的工作中就不停探索,寻找解决问题的办法,后来终于找到一种解决办法,那就是利用AutoCAD的VBA二次开发功能进行编程,将管线基本信息(可以按自己需求进行增减)写入到块属性中,这样在CAD图上就可以直观看到管线的相关信息,使用起来就非常方便。二 块属性块属性是一种可以与块对象相关联的文字对象,它在块对象中提供用户一种交互式的标识或者标签。块属性常常是与图形对象关联的一些信息,如可以关联管线成果中的点号、连接点号、管径(或断面尺寸)、埋深、材质、点特征、附属物、电压、压力、总孔数、已用孔数、电缆根数、管偏和权属单位等。块属性对于用户管理和使用图形信息非常有用,用户不但可以在图上直接显示块属性信息,还可以从图形中提取出属性参照的信息,然后在电子表格或数据库中使用这些信息。三 数据库连接管线信息写入块属性首先在AutoCAD成图时要与管线数据库连接,连接方法如下:使用DAO编程,可以访问并操作数据库,在VBA模块中,通过引用对象、集合打开数据,方法如下:Dim dbDataName As DatabaseDim dbRecordLine As RecordsetSet dbDataName =_ OpenDatabase(FileNameStr)打开数据库文件FileNameStrSet dbRecordLine =_ dbDataName.OpenRecordset(Select * From 管线数据)打开数据记录:管线数据四 块属性写入要使用块属性,首先需要先定义属性,方法是使用AddAttribute来添加块属性,代码如下:定义并插入块对象和写入块属性Dim BlocksObj As AcadBlockReferenceDim AttriObj As AcadAttributeSet BlocksObj=_Thisdrawing.Blocks.Add(BlockInPoint, 块名称)AttValue= dbRecordLine(点号) & dbRecordLine(连接点号) & _dbRecordLine(地面标高) & _dbRecordLine(埋深) & _dbRecordLine(管径) & _dbRecordLine(材质) & _.Set AttriObj=_BlocksObj.AddAttribute(AttHeight,AttMode,AttPrompt,AttInsPoint,AttTag,AttValue)其中AttHeight 为文字高度,AttMode 属性的类型,AttPrompt 提示字符串,AttValue为块属性的属性值,即管线信息数据,可以将打开的管线记录中相应的内容赋值给它。写入到块属性中的管线信息在打开的AutoCAD图上就可以直接显示出来,如下图所示:放大图:由上图可知,利用VBA编程生成的综合地下管图,图中块是有属性的,当我们打开这类图形时,想要知道每个管线点的信息,可以在图上直接获取,而不需要在图和成果表中来回查找,方便使用,可以大大提高工作效率。五 数据库关闭块属性写入完成以后,通过VB编程,需要将打开的数据记录和数据库文件关闭,否则影响数据库文件安全,关闭数据记录和数据库文件的代码如下:dbRecordLine.ClosedbDataName.Close六 结束语随着计算机技术不断提升和程序开发设计方法的不断发展,VB程序开发将在更多的工作领域得到更加广泛的应用,除了文中提到的利用AutoCAD的VBA二次开发可以解决在管线图中显示管线信息以外,比如在测绘的其他专业(地形测量、航空摄影)、机械、模具等其他行业都可以把相关的信息写到图上的块属性中,不仅方便使用,还可以简化查询工序,提高生产力。【参考文献】 李凤华编著AutoCAD 2002/2000 VBA开发指南清华大学出版社; 美Marion Cottingham著,孔祥丰等译AutoCAD VBA从入门到精通电子工业出版社; 张晋西编著Visual Basic与AutoCAD二次开发清华大学出版社; 曾洪飞、张帆、卢择临编著AutoCAD VBA & VB.NET开发基础与实例教程中国电力出版社; 安剑、孙秀梅编著的Visual Basic数据库系统开发自学手册人民邮电出版社; 赛奎春、李俊民编著的Visual Basic函数参考大全人民邮电出版社; 张宏林、孔艳 王哲等编著的Visual Basic 6.0开发数据库人民邮电出版社; 姚巍编著的Visual Basic数据库开发从入门到精通人民邮电出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论