基于VBAutoCAD和Midas Civil二次开发在桥梁结构计算中应用.docVIP

基于VBAutoCAD和Midas Civil二次开发在桥梁结构计算中应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VBAutoCAD和Midas Civil二次开发在桥梁结构计算中应用

基于VBAutoCAD和Midas Civil二次开发在桥梁结构计算中应用   摘要:本文以笔者开发的预应力钢束坐标采集程序为例,介绍运用Visual Basic工具在AutoCad平台上采集钢束坐标,并生成Midas Civil钢束数据的二次开发方法,以提高桥梁结构计算建模效率。   关键词:Visual Basic;AutoCAD;Midas Civil;结构计算;二次开发   1 前言   近年来,公路建设发展迅猛,大跨径桥梁越来越多地被采用;城市化进程不断推进,对桥梁美观的要求将结构尺寸一再减小;此外,工程建设质量问题频发,促使工程设计规范日益成熟……这些事实一再表明结构计算越来越重要!   笔者结合多年桥梁设计经验,深入分析发现:桥梁结构尺寸拟定,通常由经验丰富的工程师完成,后续设计一般不作改变,因此结构计算的难点并不在此,往往在于钢束调整过程。钢束调整过程一般是:先绘出钢束形状,然后采集数据,并输入结构计算软件(如Midas Civil)计算,研究计算结果,重复上述过程直到结构受力满足要求。这一过程中,若钢束数量较多,采用手工方式采集与输入耗时耗力,效率低下且容易出错,更无法满足快速计算的需要。   本文提出利用VB在AutoCAD平台上进行二次开发,读取AutoCAD图形信息,按计算程序(如Midas Civil)要求写入文件,再在计算程序中读入文件,即完成从AutoCAD中采集,到计算程序中(Midas Civil)输入的过程。按此设想开发的预应力钢束坐标采集程序,在AutoCAD中用多段线绘制好钢束,按程序提示在AutoCAD中选取钢束,然后存为“.mct”文件,在Midas Civil中执行“读入MCT”,即实现了钢束采集及输入的过程。   2模块构成   预应力钢束坐标采集程序执行基本流程如下(图1)。以下对程序主要模块作一简要介绍。   2.1 连接AutoCAD模块   程序启动后首先连接到AutoCAD,将其设计为一个模块:检察AutoCAD是否启动,若已经启动则直接连接;若未启动则启动之;如果启动失败,向用户作错误提示;连接成功后,设置AutoCAD窗口状态。代码如下:   Public Sub linkcad()   Set cad=GetObject(,AutoCad.Application)   If Err.Number Then   Err.Clear   Set cad=CreateObject(AutoCad.Application)   If Err.Number Then   MsgBox 启动AutoCAD失败,请检察AutoCAD是否正确安装!   Exit Sub   End If   End If   cad.Visible=True   cad.WindowState=acMax   End Sub   2.2钢束选取模块   执行钢束采集,实际是调用钢束选取模块,该模块创建名为“tdn”的选择集;然后调用选择集的屏幕选择功能;使用多段线作为选取过滤条件,以便只有多段线能够被选中;以“空格”或“回车”结束选取,核心代码如下:   Public Sub selecting()   Dim ft(0)As Integer,fd(0)As Variant   cad.ActiveDocument.SelectionSets(tdn).Delete   Set sset=cad.ActiveDocument.SelectionSets.Add(tdn)   sset.Clear   ft(0)=0   fd(0)=lwpolyline   sset.SelectOnScreen ft,fd   End Sub   2.3 生成MCT文件模块   当钢束选取结束后,所选钢束(AutoCAD中的多段线)保存在 “tdn”选择集中,执行程序的“存为MCT”命令可将钢束数据按Midas Civil所需格式写入“.mct”文件。   先就AutoCAD对多段线的存储作个补充:(图2)为一根钢束(即AutoCAD中的多段线),标识R1、R2者为两段圆弧。AutoCAD以坐标(x,y)的顺序将1~6点依次存放在该多段线的Coordinates变量中;通过多段线的成员函数GetBulge(i),可以获取每个顶点处的凸度,关于凸度,是以圆弧圆心角来定义的,凸度b与圆心角θ的关系为b=tg(θ/4);   Midas Civil中存储钢束数据采用交点法,如(图2)存储的是1、JD1、3、4、JD2、6点的(x,y,R)信息;因此,需对多段线作一些计算,包括JD1、JD2的坐标及该点处半径R1、R2;交点的坐标根据平面解析几何的知识不难求得,半径R1、R2,根据前述凸度与圆心角的关系也可求;程序中

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档