您好,欢迎来到筏尚旅游网。
搜索
您的当前位置:首页基于VBA在AutoCAD中自动绘图的应用

基于VBA在AutoCAD中自动绘图的应用

来源:筏尚旅游网
基于VBA在AutoCAD中自动绘图的应用

------李广亚

随着电脑技术的飞速发展,目前大多数企业都采用AutoCAD制图、绘图,在工程施工领域也是采用AutoCAD进行二维工程绘图。GPS的应用使的施工现场坐标的采集非常方便,通常便于直观,监理、业主会要求将GPS采集的坐标绘制在CAD图上。对于一个熟悉CAD的人来说,将10几个坐标数据手工录入坐标绘制到CAD中是比较容易的,但如果是几十个点,上百个点,甚至几百个点,对于一个施工技术员来说一个一个坐标的手工录入,就成了一个比较有难度的工作,主要因为手工录入会比较繁琐、耗费时间长还特别容易出错。在这方面如何能提高技术人员的工作效率?基于此,我们采用AtuoCAD中的VBA技术,进二次开发,可以方便的将大量的坐标自动绘制到CAD图中。下面通过一个简单事例来说明AtuoCAD中VBA技术的二次开发自动绘图程序的过程:

事件介绍:2012年业主在场区开挖一不规则多边形鱼塘,要求我单位将鱼塘进行测量并标注在总平面图上。

1、 数据采集:

使用GPS现场进行数据采集,在鱼塘周边从一点开始,顺时针方向进行,在不规则鱼塘的所有角点拐点均采集坐标,并保存在GPS中。

2、

导出坐标:

将GPS中采集的坐标导出到文本文档,如下图:

3、

数据处理:

将导入的坐标使用EXCEl文档打开并编辑处理,高程全设为0,表单重命名为“SJ”,保存EXCEl文档到D盘,文档名称为“GPS导入坐标绘图”如下图:

4、

VBA跨平台技术二次开发:

(1)、打开AutoCAD,选择工具->宏->VBA编辑器,打开VBA编辑器。在VBA编缉器中插入用户窗体,在窗体上插入按钮组件,如图:

(2)、双击按钮,打开代码编辑窗口,编缉代码如下:

Private Sub CommandButton1_Click()

Dim xlapp As Excel.Application Dim xlbook As Excel.workbook Dim xlsheet As Excel.worksheet

Set xlapp = CreateObject(\"excel.application\")

Set xlbook = xlapp.workbooks.Open(\"D:\\GPS导入坐标绘图.xls\") '打开的EXCEL路径

xlapp.Visible = False

Set xlsheet = xlbook.worksheets(\"sj\") '打开EXCEL中的sj工作表 i = xlsheet.Cells(1, 2) 'i为线条线数

For p = 0 To i - 2 Step 1 p = p

k1 = xlsheet.Cells(3 + p, 3) '将表格第3行第3列内数值赋值给K1,X坐标值

h1 = xlsheet.Cells(3 + p, 2) k3 = xlsheet.Cells(3 + p, 4) k2 = xlsheet.Cells(4 + p, 3) h2 = xlsheet.Cells(4 + p, 2) h3 = xlsheet.Cells(4 + p, 4) Dim 点 As AcadLine Dim 起点(2) As Double Dim 端点(2) As Double

起点(0) = k1 '将K1值贱赋值给起点数组内第一个值,即起点X坐标。 起点(1) = h1 起点(2) = k3 端点(0) = k2 端点(1) = h2 端点(2) = h3

Set 点 = ThisDrawing.ModelSpace.AddLine(起点, 端点) Next 'for语结束 xlbook.Close xlapp.Quit

Set xlapp = Nothing End Sub '结束

(3)、代码编辑完成后,点击运行后,如下图,点击自动绘图按钮:

自动绘制出鱼塘平面图如下:

(4)、保存VBA文件:在VBA编辑器中点击保存按钮,将所编写的VBA程序文件进行保存,保存名称为:GPS导入坐标绘图,如下图:

(5)下次需要使用时只需在CAD的VBA编辑器中打开,不用重复编写程序文件。 总结:

本次事例中只有12个坐标,自动绘图对几十个坐标、上百个坐标、甚至上千个坐标都能顺间完成。

15个坐标的手工录入时间约为30分钟,点越多,录入时间会越长,一个人静下心来,300个点的手工录入两天时间才能完成,而且会产生很多错误。1000个点的手工录入要一周时间才能完成。本次使用VBA编写的代码程序节约了大量的人工时间,方便、快速、大大提高了技术人员的工作效率。

因篇幅问题不能全部显示,请点此查看更多更全内容

热门图文

Copyright © 2019-2025 efsc.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务