工程图纸标题栏的自动生成及其信息提取的方法实现苗帅,王卫东(江苏科技大学计算机科学与工程学院江苏镇江212003)摘要:随着AutoCAD工程图纸的广泛应用,如何能快速的操作标题栏及组织其信息,已经成为目前迫切需要解决的问题。本文利用VBA组件设计的人机交互界面,通过调用程序自动生成了具有属性的标题栏,实现了标题栏区域内信息的自动提取,并将提取的信息存储到Oracle数据库,这样不仅提高了制图效率,同时也达到了对图纸标题栏信息的有效组织。关键词:VBAAutoCAD标题栏信息提取中图分类号:TP391.72文件标识码:THEACCOMPLISHEDMETHODOFAUTOGENERATIONANDINFORMATIONEXTRACTIONABOUTGRAPHICSTITLEBLOCKMiaoshuai,WangWeidong(SchoolofComputerScienceandEngineering,JiangsuUniversityofScienceandTechnology,ZhenjiangJiangsu212003,China)Abstract:WiththeextensiveapplicationofAutoCADengineeringgraphics,howcanquicklymanipulatetitleblockandorganizeinformationingraphicshavebecometheproblemwhichisurgentlyneededtohandle.ThispaperusesthecomponentsofVBAfordesigningthehuman-machineinterface.Atthesametime,itautomaticallygeneratedwiththepropertiesofthetitlebarbycallingtheprogramcommandandalsoachievedtheautomaticextractionofinformationwhichbelongstothetitlebar;thisinformationisultimatelystoredinOracledatabase.Thisnotonlyimprovesthemappingefficiencyandalsomanagesefficienttheinformationofthetitlebarofthegraphics.Keywords:VBAAutoCADTitleBarInformationalRetrieval0引言利用AutoCAD进行工艺装备的设计时,会产生大量的DWG文件,每个DWG文件中既可能包含一张图纸,也有可能包含多张图纸。无论是图纸信息的组织还是查询,涉及的数据信息都是海量的,这样就会给图纸的信息管理带来麻烦。所谓AutoCAD图纸的信息管理就是利用技术手段对图纸信息进行组织,分类,录入到数据库,方便用户快速的查询检索以及修改。然而这些图纸的信息通常都反映在标题栏中,因此,如何能快速准确的提取标题栏的信息并录入数据库成为图纸信息管理的前提,同时也是解决问题的关键。对于DWG文件标题栏信息的提取,通常采用“模块化属性文字”的方法[1],这种方法需先定义模块,这些模块包括图纸的信息和线框图形,提取信息时只需读取模块属性类别所定义的文字即可。这种方法只能满足单个企业内部当前生产需求,而且操作过程也不方便。此外,结合图形图像识别领域的技术,通过单元识别和格式识别,获取标题栏信息表的所有信息[2],但是这种方法的准确率不是很理想,特别是给用户对信息查询的带来了影响。另外,还有一种基于ActiveX技术的图纸标题栏信息自动提取的方法[3],该方法介绍了一种利用AntoCADR14版提供的新一代开发接口技术—ActiveXAutomation,通过访问AutoCADR14的对象模型,直接提取标题栏信息;这种方法很好解决了信息提取准确率的问题。但唯一的问题是要求用户设计标题栏时,用AutoCAD提供两个图形对象Attribute和Block,没有具体说明如何设计具有Attribute和Block的标题栏。通过对DWG文件标题栏信息提取现状的分析,可以得出在标题栏信息提取时,收稿日期:。苗帅,硕士研究生,主研领域:模式识别与信息系统。除了要考虑信息提取准确率等因素之外,还要考虑在提取之前对于标题栏的设计。特别是对于如何生成标题栏以及如何对标题栏的信息进行提取而后统一入库的系统流程没有一个完整的解决方案。因此,本文在对标题栏信息进行提取之前,首先要实现标题栏的自动生成,使其具有Attribute和Block,为之后的提取工作做好基础;然后采用VBA结合ActiveXAutomation对标题栏内的信息进行提取,确保提取信息的准确率;最后采用ADO技术把提取的信息录入到数据库中。1总体设计1.1VBAVBA是AutoCAD内嵌的基于ActiveX技术的面向对象的可视化开发编程工具,由于VBA结构精简且常驻与主程序内部,故其代码运行速度快,数据共享方便。在AutoCAD中,允许VBA编程环境与AutoCAD同时运行,并通过ActiveXAutomation接口对AutoCAD进行编程控制。它不仅能控制AutoCAD对...