- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VBA的钻孔投影里程程序初步探索
基于的钻孔投影里程程序初步探索VBA张坤( 中铁第一勘察设计院集团有限公司,陕西西安 710043)Preliminary Study of Drilling Projection Mileage Based on VBAZHANG Kun摘 要 目前的地质勘察工作中,勘探孔的坐标、里程及偏移量多是在 AutoCAD 中采用人机交互方式读取,工作量大并且繁琐。采用 VBA 对 AutoCAD 进行钻孔投影里程程序的二次开发,程序中钻孔采取 了块和块属性的形式,能够自动获得钻孔的编号、坐标、里程及偏移量,然后将数据保存于 Excel 中,并且将 里程及偏移量写成工作中习惯的方式。钻孔图块维护和操作便捷,计算机自动获取的钻孔数据准确度高, 程序界面友好,操作简单,极大减少了专业人员的工作量。经实际应用,效果明显,值得推广。关键词 钻孔图块 钻孔坐标 投影里程 偏移量VBA Excel中图分类号: P628文献标识码: AAutoCAD 是目前勘察设计行业最常用的设计软件之一,广泛应用于铁路、公路、水利等行业。作为一种通 用的辅助设计软件,在面对特殊用途的设计中,如果仅 仅利用 CAD 自身提供的功能,往往造成人工工作量大, 而且很多工作量都是重复性劳动。在此情况下,只是会 用软件的基本功能是不够的,根据专业性质和用户要求 进行 CAD 二次开发就成了解决问题的有效途径。目前工作中,勘探孔编号、坐标、里程及偏移量多 是通过人机交互的方式直接在 CAD 中测量读取,工作 量大且具有重复性。人工读取数据有以下三个不足, 一是费时,二是错误率高,三是精度无法保证。为了解 决这些问题,选择 VBA 对 CAD 进行二次开发就成了 必要。VBA 入门简单,开发速度快。在钻孔投影里程 程序的开发中,钻孔以带属性的块的形式存在,程序能 够很方便的获取钻孔图块的编号和插入点,然后通过 VBA 调用 Lisp 的曲线类函数,能够获取钻孔图块的插 入点在线路上的投影里程和偏移量,最后在 VBA 中调 用 Excel 的类型库,将钻孔的相关数据保存在 Excel 中。程序运行方便,准确度高,减少了专业人员的工作 量,取得了良好的效果,值得推广和运用。程序设计构架1程序设计思路程序主要包括一个读过程和一个写过程,读取钻 孔信息全部操作均在 CAD 中完成,并且在 CAD 命令 窗口中有信息提示; 在数据存储方面,程序采用了大家 习惯的 Excel 文件来保存钻孔的编号、坐标、里程及偏 移量( 如图 1 所示) 。1. 1图 1 程序运行流程图程序运行完毕后,钻孔的以上数据自动传输到Excel 中,可以替代目前逐个量取钻孔坐标、里程及偏 移量繁琐的工作。程序的组成钻孔投影里程程序主要由三部分组成: 宏启动程 序、用户窗体和类模块。1. 2收稿日期:2012-07-16作者简介:张 坤( 1984—) ,男,2011 年毕业于中国地质大学( 武汉) 地质工程专业,工学硕士,助理工程师。Sub RunMicro( )frmMain. ShowEnd Sub该程序的目的是调用主窗口,其中窗体的名称为frmMain。窗体包括一个里程冠号输入框,两个命令按钮: 运 行和退出。程序的运行的所有代码都包含在运行命令 按钮的过程中( 如图 2 所示) 。决这个问题,可以用钻孔块和块属性的方法来表示钻孔信息。因此,程序开发中将钻孔做成块的形式,编号做成 块属性,这样就能够很容易获取相关的钻孔编号和块 插入点坐标,也即钻孔的平面位置坐标。( 1) 建立 CAD-VBA 与 Excel 程序连接 在“工具”-“引用”里面引用 Excel 对象库,这样就可以 在 CAD - VBA 中 实 现 CAD 和 Excel 的 数 据 通信[4-5]。关键代码实现如下:Set ExcelApp = GetObject( , Excel. application )Set mySheet = ExcelApp. Worksheets( 1) ( 2) 选择需要投影里程的线路 该方法要求用户在图形屏幕上拾取一个点来选中线路实体,一旦选择成功后有消息提示框提示线路选 择成功。关键代码实现如下:ThisDrawing. Utility. GetEntity Ent,PickedPoint, 选择线路( 3) 选取线路上一点并输入里程 在选择线路上一点时,对象捕捉模式设置为最近点捕捉和交点捕捉,目的是为了选取线路上标示里程 桩号与线路的交点,根据线路上一点的里程和任意一 点的相对距离,就可以算出线路上该点的里程。计算原理如下: 假设线路上所选取 A 点的里程数 为 X0 ,需要计算 B 点的里程数为 X1 ,A 点距离线路起 点的线路上 L0 ,B 点距离线路起点的距离为 L1 ,很容 易
文档评论(0)