admin 管理员组文章数量: 887019
2024年3月13日发(作者:恶魔栖息的房间百变大侦探)
AutoCAD 2014 二次开发 VBA 基础与实例
第一集 AutoCAD二次开发介绍
第二集 AutoCAD VBA创建直线1
我们在用VBA在AutoCAD 中完成预期的操作时,需要调用VBA提供的类或方
法。这就要求我们了解vba的基本语法结构。其实vba和vb的语法结构基本相
同,如果学习过vb程序设计语言的话,那么对vba的语言结构就不会陌生,如
果没有学过那么,我会逐步给大家来讲解vba的语法结构。其实如果没有学过vb
语言,就直接学习vba也没有问题。当然我们也不提倡为了学习vba而去学习vb
程序设计语言,因为没有必要,直接学习vba发而不会受到vb的影响,他们毕
竟还是有一些差别的。
我们先来看一个简单的应用:
Vba语法讲解:Dim ps As Variant '定义变量类型,在vba中使用变量前一定要先
定义
Dim pt1(0 To 2) As Double Dim pt2(2) As Double 两种定义数组
的方法
CAD中的点可以用数组来表示,数组中的三个值分别为x、y、z
Public Sub LineDemo()
Dim pt1(0 To 2) As Double '定义起点
Dim pt2(2) As Double '定义终点
pt1(0) = 0: pt1(1) = 0: pt1(2) = 0
pt2(0) = 100: pt2(1) = 100: pt2(2) = 0
Dim objLine As AcadLine
Set objLine = e(pt1, pt2)
End Sub
第三集 AutoCAD VBA创建直线2
上面的过程可以在模型空间内画出一条指定起点和终点的直线,但是如果指定的
不是起点和终点,那该怎么办呢,我们可以通过相关的函数将其转换成起点和终
点的形式,也可以自定义函数来实现相应的操作。
我们看到了上面过程的最后一个表达式很长,自定义函数可减少这种代码的书写,
当然,如果你是初学AutoCAD VBA编程的话,我建议还是尽量多些这些长的代
码,因为他可以帮助你理解AutoCAD VBA中各种对象和方法以至属性之间的关
系。
那么过程和函数之间有什么区别呢?我们用关键字Sub定义的一段代码为过程,
而用关键字Function定义的一段代码为函数,过程和函数都可实现一定的功能或
者操作。过程没有返回值,而函数可以有返回值,这样就可将一长段代码其中的
部分功能用函数封装起来。这样做的好处是,使得代码的可读性更强,代码看起
来更简练,同时如果多个功能代码都有相同的部分,则可以减少书写的次数。
下面我们根据四种不同的情况来分别写出相应的函数:
'根据起点和终点创建直线
版权声明:本文标题:AutoCAD 2014 二次开发 VBA 基础与实例 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1710270820h567083.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论