Autocad二次开发vba教程第三课

本文是一篇关于AutoCAD VBA二次开发的教程,讲解如何使用VBA绘制多条直线来模拟多段线。通过获取用户输入的点坐标和Z坐标,利用循环和错误处理机制实现连续画线,直至用户结束输入。核心代码涉及ThisDrawing.Utility.GetPoint()方法用于获取坐标,GetReal()方法获取Z坐标,以及AddLine()方法画直线。
摘要由CSDN通过智能技术生成
 

为了简化程序,这里用多条直线来代替多段线。以下是源码:
Sub myl()
Dim p1 As Variant '申明端点坐标
Dim p2 As Variant
p1 = ThisDrawing.Utility.GetPoint(, "输入点:") '获取点坐标
z = ThisDrawing.Utility.GetReal("Z坐标:") '用户输入Z坐标值
p1(2) = z '将Z坐标值赋予点坐标中
On Error GoTo Err_Control '出错陷井
Do '开始循环
p2 = ThisDrawing.Utility.GetPoint(p1, vbCr & "输入下一点:") '获取下一个点的坐标
z = ThisDrawing.Utility.GetReal("Z坐标:") '用户输入Z坐标值
p2(2) = z '将Z坐标值赋予点坐标中
Call ThisDrawing.ModelSpace.AddLine(p1, p2) '画直线
p1 = p2 '将第二点的端点保存为下一条直线的第一个端点坐标
Loop
Err_Control:
End Sub

先谈一下本程序的设计思路:
1、获取第一点坐标
2、输入第一点Z坐标
3、获取第二点坐标
4、输入第二点Z坐标
5、以第一、二点为端点,画直线
6、下一条线的第一点=这条线的第二点
7、回到第3步进行循环
如果用户没有输入坐标或Z值,则程序结束。

首先看以下两条语句:
p1 = ThisDrawing.Utility.GetPoint(, "输入点:") ‘获取点坐标
……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值