VB对CAD二次开发在软横跨编程及出图的应用.doc_第1页
VB对CAD二次开发在软横跨编程及出图的应用.doc_第2页
VB对CAD二次开发在软横跨编程及出图的应用.doc_第3页
VB对CAD二次开发在软横跨编程及出图的应用.doc_第4页
VB对CAD二次开发在软横跨编程及出图的应用.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

VB对CAD二次开发在软横跨编程及出图的应用 罗林生 (中铁建电气化局南方公司接触网分公司湖北武汉) 摘要:接触网作为电气化铁路的重要组成部分,接触网为电力机车提供电能保障,对于弓网的正常受流起到决定性的作用。软件开发以开发工具为基础,同时连接数据库、各种版本以及来共同完成软横跨的编程、计算、出图、报表导出以及后期对数据库中软横跨零件的维护,使该软件能够满足不同设计单位设计的软横跨结构形式及不同生产厂家生产的软横跨零部件,保证计算软件的通用性。 关键词:接触网;软横跨;数据库;编程;出图 :TH122:50843 引言 随着科学技术的发展、铁路运量的快速增长和对能源利用率的重视,为适应我国经济发展需要,我国电气化铁路也得到迅猛发展,截至年底,我国电气化铁路总里程突破万。 接触网作为电气化铁路的重要组成部分,接触网为电力机车提供电能保障,对于弓网的正常受流起到决定性的作用。因此,接触网施工质量的好坏将直接影响到电气化铁路的运营安全以及广大群众的人身安全和财产安全。目前,站场接触网设计主要有两种安装方式:一种是以上时速的硬横跨接触网安装方式,该种安装方式结构稳定,其制作主要由专业化的工厂预制完后发往现场由施工单位通过现场组装,然后利用轨道吊吊装到位,但该种安装方式结构复杂,运输及安装均不便,而且造价昂贵,该种安装方式主要用于高速铁路;另一种是及以下时速的软横跨接触网安装方式,该种安装方式结构稳定性较硬横跨差,软横跨的计算和预制均由施工单位独立完成,但该种安装方式结构简单,运输及安装均简便,而且造价低,该种安装方式主要用于普速铁路。 目前,国内软横跨计算方法主要有种:一种是模拟抛物线法,通过抛物线原理,利用软绳的自然柔软性在现场比照实物形成抛物线进行预安装。然后进行各节点标注和测量其长度,数据采集完后再拆除软绳,最后根据采集的数据在料库中心进行预制及现场安装到位,该种方法操作方便,但施工效率低下,而且没有考虑软横跨加负载后的受力状态,施工误差很大;完全靠现场人员的直观经验,目前已基本淘汰;另一种是表格法,根据力学分析原理,通过软横跨各节点的力矩分析,将软横跨各节点的长度用重量进行代替,编制计算公式,然后将公式利用表计算功能,由电脑进行计算得到各节点对应的长度,然后由技术人员根据各节点长度进行人工绘图,并在图纸上标注各节点需要预制的长度及各零部件所在的位置,最后由作业人员完成预制和安装。该种方法利用计算机功能,其计算精度高,但因不能直接生成图纸,还需要技术人员进行人工绘图,其效率较低。 为了能够将计算结果通过某种工具直接生成图样并将各节点对应的长度及各零部件的扣减长度均能在图纸上反映出来,因此成立了课题攻关组,针对这一问题进行攻关。软件开发以开发工具为基础,同时连接数据库、各种版本以及来共同完成软横跨的编程、计算、出图、报表导出以及后期对数据库中软横跨零件的维护,使该软件能够满足不同设计单位设计的软横跨结构形式及不同生产厂家生产的软横跨零部件,保证计算软件的通用性。 软横跨软件编程的要点难点 主要讲述采用语言编写软横跨软件,是一种由公司开发的结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言,它源自于编程语言。拥有图形用户界面()和快速应用程序开发()系统,可以轻易的使用、连接数据库,或者轻松的创建控件。程序员可以轻松的使用提供的组件快速建立一个应用程序。 理清程序的整体思路 在正规编程,都得用画程序流程图、时序图等,理清事物所对应的关系。笔者就参与编写的软横跨助手来简单说明流程图(见图)。 理解软横跨计算原理 对软横跨方面的知识点细节进行反复理解,通透,同时去现场多观察特征,这里主要讲述编程方面,不作详解。 1.3账号登录 一款好的软件,应该具备账号登录,以此保证用户使用的安全性,当然,如果每次登录都需要输入密码,会引起用户的厌烦,因此需要记住密码的功能,当然也需要修改密码的功能。 1.4调用AutoCAD生成模型 调用AutoCAD生成模型,网上有很多相关的资料,也有很多的代码,方法都是一样的,代码如下: PrivateSubCommand1_Click() 首先引用acadxxObjectLibrary类型库(或者其他版本的类型库) DimmyAcadAppAsAutoCAD.AcadApplication,activeDocAsAutoCAD.AcadDocument,acMSAsAutoCAD.AcadModelSpace OnErrorResumeNext SetmyAcadApp=GetObject(,Autocad.Application)检查AutoCAD是否已经打开 IfErr0Then没有打开 Err.Clear SetmyAcadApp=CreateObject(Autocad.Application)打开CAD IfErrThen MsgBoxErr.Number&:&Err.Description打开失败 ExitSub EndIf EndIf 相信对CAD二次开发的程序员来说很不陌生,在初学时,就会发现一个很大的问题,当把程序开发好了,打包到其他电脑上运行,就会发现如若其他电脑里的CAD的版本与所开发电脑的版本不同,那么编写的软件就无法调用其它的CAD也不可能别人用你的软件就要别人去安装那个版本的CAD,而本身CAD就安装很费时,因此要对程序改进,如下: PrivateSubCommand1_Click() 不引用CAD的类型库 DimmyAcadAppAsObject,activeDocAsObject,acMSAsObject注意这里修改的地方,网上几乎很难找得到。 OnErrorResumeNext SetmyAcadApp=GetObject(,Autocad.Application)检查AutoCAD是否已经打开。 IfErr0Then没有打开 Err.Clear SetmyAcadApp=CreateObject(Autocad.Application)打开CAD IfErrThen MsgBoxErr.Number&:&Err.Description打开失败。 ExitSub EndIf EndIf 这样稍微改编后,就能调用各种版本的AutoCAD,不至于在直接引用特定AutoCAD版本库而引起其他版本的AutoCAD无法调用。下面来介绍下画图情况: 在VB编译器里form1里添加输入框控件以及按钮。 1.5调用数据库 在很多软横跨预制或者计算出图软件上,很多都没有引用数据库,只是单纯的使用静态文本来做软件。在软件开发过程中,确实很省事,但是在维护上是非常困难的。举个例子:假如现在开发一个静态的软横跨计算软件,也许现在对这个项目的软横跨很实用,但是到了下一个项目,如果软横跨用的零件变了,岂不是又得重里面修改程序,这就弄得很不和谐,那下下一个项目呢?难道总是要修改程序?因此,学会使用数据库是有效解决这个弊端,目前主流的大型数据库有Oracle、Sybase、DB2、SQLserver,小型数据库有:Aess、MySQL、BD2等。开发程序时可以根据程序将要面对数据的大小还确定使用什么样的数据库,当然,开发软横跨计算软件不需要那么大的数据库,采用微软办公软件自带的Aess和MySQL就足够了,本文就以微软办公软件自带的Aess举例。 在编程上,很多使用者喜欢引用ADOAC控件来调用数据,这样似乎很方便,但是有一点在打包软件后,很容易因为没有对那控件进行注册,而导致软件出错。这里建议大家不要引用。 在VB6.0里编程,加入MSHFlexGrid控件,增加“增、删、改、查”四个按钮,写入代码如下: DimstrSql2$ Dimrs2AsNewADODB.Recordset strSql2=select*from支柱类型 Setrs2=NewADODB.Recordset rs2.OpenstrSql2,conn,3,3 SetMSHFlexGrid2.DataSource=rs2 frmxc_zh.MSHFlexGrid2.ColWidth(0)=600 frmxc_zh.MSHFlexGrid2.ColWidth(1)=1400 frmxc_zh.MSHFlexGrid2.ColWidth(2)=1100 frmxc_zh.MSHFlexGrid2.ColWidth(3)=1000 frmxc_zh.MSHFlexGrid2.ColWidth(3)=1000 frmxc_zh.MSHFlexGrid2.ColWidth(3)=1000 当然,如果数据库仅限这样,就没有体现它的优势。因此还要对其进行增删改查,这样就显得软件非常灵活。 软横跨编程软件生成模型效果举例 软横跨编程软件是专门预制软横跨的比较专业的软件,不仅能计算,出图,导出报表,关键还采用了很多新的技术,如调用数据库,采用加密,下面是使用软横跨助手对现场软横跨计算并生成的模型,比例和实际比例为。 结论 通过对软横跨软件编程的要点难点的浅析,了解到用编程语言或者其他版本对软横跨进行编程计算是非常方便,而且界面很清晰,效果是可观的。调用进行模型生成,既有自身的优势,又可以在模型有不足的时候进行人工修改,非常方便。而采用作为报表导出,也是人性化,符合日常办公的需要。 总之,所谈及的主要是对的二次开发,学好的二次开发,有助于提高实际工作的效率,提高准确率。 参考文献 于万聚高速电气化铁路接触网成都:

温馨提示

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

评论

0/150

提交评论