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

商机 产品 资讯 公司 商场 展会      摩托车刹车感 埋刮板输送机 加热炉 对接机

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