正文

Autocad VBA初级教程 (第五课 画函数曲线)2006-01-03 07:10:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/stef/9250.html

分享到:

  先画一组下图抛物线。 下面是源码: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 aEnd 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 iThisDrawing.ModelSpace.AddLightWeightPolyline (p) '画多段线ZoomExtents '显示整个图形End Sub p(i) = i * 2 * 3.1415926535897 / 360 '横坐标横坐标表示角度,后面表达式的作用是把角度转化弧度ZoomExtents语句是缩放命令,它的作用是显示整个图形,消除图形以外的区域 本课思考题:画一条抛物线:y=0.5*x*x+3,其中X取值范围在正负50之间

阅读(4985) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册