机械网首页 | 添加到收藏夹 机械网服务 | 免费注册会员 | 会员登录
机械网
用户名 密码 验证码 取回密码
机械商城 机械商机 机械产品 机械资讯 机械展会 机械黄页 机械知识

商机 产品 资讯 公司 商场 展会      DONGHUA STEE DONGHUA STEE 玻璃 换热

Autocad VBA初级教程 (第五课 画函数曲线)

 

先画一组下图抛物线。




下面是源码:
Sub myl()
Dim p(0 To 49) As Double '定义点坐标
Dim myl As Object '定义引用曲线对象变量
co = 15 '定义颜色
For a = 0.01 To 1 Step 0.02 '开始循环画抛物线
  For i = -24 To 24 Step 2 '开始画多段线
    j = i + 24  '确定数组元素
    p(j) = i '横坐标
    p(j + 1) = a * p(j) * p(j) / 10 '纵坐标
  Next i '至此p(0)-p(40)所有元素已定义,结束循环
  Set myl = ThisDrawing.ModelSpace.AddLightWeightPolyline(p) '画多段线
  myl.Color = co '设置颜色属性
  co = co + 1 '改变颜色,供下次定义曲线颜色
Next a
End sub


为了鼓励大家积极思考,从本课开始,我不再解释每一条语句的作用,只对以前没有提过的语句进行一些解释,也许你一时很难明白,建议用上一课提到的跟踪变量、添加断点的办法领悟每一条语句的作用,如果有问题不懂请跟贴提问。
在跟踪变量p时请在跟踪窗口中单击变量p前的+号,这样可以看清数组p中每一个元素的变化。


ACAD没有现成的画抛物线命令,我们只能用程序编写多段线画近似抛物线。理论上,抛物线的X值可以是无限小、无限大,这里取值范围在正负24之间。


程序第二行:Dim myl As Object '定义引用曲线对象变量
Object也是一种变量类型,它可以把变量定义为对象,本例中myl变量将引用多段线,所以要定义为Objet类型。


看画多段线命令:
Set myl = ThisDrawing.ModelSpace.AddLightWeightPolyline(p) '画多段线
其中括号中的p是一个数组,这个数组的元素数必须是偶数,每两个元数作为一个点坐标。
等号前面部分“Set myl”的作用就将myl变量去引用画好的多段线。
myl.Color = co '设置颜色属性。在ACAD中,颜色可以用数字表示,本例中co会增值,这样就会有五彩缤纷的效果。


本课第二张图:正弦曲线,下面是源码:
Sub sinl()
Dim p(0 To 719) As Double '定义点坐标
For i = 0 To 718 Step 2 '开始画多段线
    p(i) = i * 2 * 3.1415926535897 / 360 '横坐标
    p(i + 1) = 2 * Sin(p(i)) '纵坐标
Next i
ThisDrawing.ModelSpace.AddLightWeightPolyline (p) '画多段线
ZoomExtents '显示整个图形
End Sub



1 2 下一页

共 2 页
【字体: 】【 打印 】【 关闭


 

■中国机械网提供的资料来自互联网,资料的版权属于作者本人,只供个人学习用,不得非法出版、销售。

相关链接
·Autocad VBA初级教程 (第二课 编程基础)
·Autocad VBA初级教程 (第一课:入门)
·Autocad VBA初级教程 (第三课 编程基础二)
·Autocad VBA初级教程 (第四课 程序的调试和保存)
·Autocad VBA初级教程 (第六课 数据类型的转换)
·Autocad VBA初级教程 (第七课 写文字)
·Autocad VBA初级教程 (第八课:图层操作)

版权所有:机械网 邮件:webmaster@cnmachines.com