Autocad VBA初级教程(8)
motimes = 3000
4E*N4v#x*Q'?1y'iwww.askcad.com8y:B\www.askcad.com*N5N/G.~ E$f8X7O0g
movx = (p1(0) - p0(0)) / motimes movy = (p1(1) - p0(1)) / motimes For i = 1 To motimes pe(0) = pc(0) + movx pe(1) = pc(1) + movy getobj.Move pc, pe '移动一段 getobj.Update '更新对象 Next
(askcad.com),为工程师增加动力.W:B7b0P$?3o(E3p'h5M
End Sub
先让用户选择移动的对象、起点、终点,motimes动画是设置动画帧数,这个例程是让对象移动3000小段,movx和movy是每一段移动的距离,然后进行一个3000次的循环,每一次循环移动一小段距离。
看第二个例题:做一个小轮子在一条山坡上运动的动画,山坡为正弦曲线。请注意,应该用偏移法获得轮圆心的轨迹才是正确的。编程思路:先画好圆和横轴,然后画山坡,偏移获得移动轨迹线,放到隐藏图层中,然后根据轨迹线移动圆和轴,在移动之前先旋转轴线。
(askcad.com),为工程师增加动力0G5i,V!h9g\旋转方法:object. rotate 基点,角度 偏移方法: object.offset(偏移量)Sub moveball()
www.askcad.com2o3F5g d.~*o0@ W%V(askcad.com),为工程师增加动力4p7}(D;M!h7F/t
9N/m6t$h#s;ADim ccball As Variant '圆 Dim ccline As Variant '圆轴
(askcad.com),为工程师增加动力,E1g$K:P$\\9_ ]7D+?
Dim cclinep1(0 To 2) As Double '圆轴端点1
Dim cclinep2(0 To 2) As Double '圆轴端点2 Dim cc(0 To 2) As Double '圆心 Dim hill As Variant '山坡线
Dim moveline As Variant '移动轨迹线Dim vpoints As Variant '轨迹点
Dim movep(0 To 2) As Double '移动目标点坐标
www.askcad.com/v1d M5w1~9S2u9](askcad.com),为工程师增加动力'p%M0^'o-j;H*^)] K
Dim lay1 As AcadLayer '放轨迹线的隐藏图层
cclinep1(0) = -0.1: cclinep2(0) = 0.1 '定义圆轴坐标
Set ccline = ThisDrawing.ModelSpace.AddLine(cclinep1, cclinep2) '画直线Dim p(0 To 719) As Double '申明正弦线顶点坐标 For i = 0 To 718 Step 2 '开始画多段线 p(i) = i * 3.1415926535897 / 360 '横坐标 p(i + 1) = Sin(p(i)) '纵坐标 Next i
Set hill = ThisDrawing.ModelSpace.AddLightWeightPolyline(p) '画正弦线即山坡曲线hill.Update '显示山坡线
(askcad.com是国内最专业发展最快的utoCA设计讨论基地论坛云集高手提供CAD的教程练习考试软件下载教程下载基础培训等一体化解决方案并推出Pro/Engineer,Unigraphics,SolidWorks相关讨论专区我们的口号:CAD设计论坛为工程师增加动力请记住我们的网址:askcad.com*u4y:w2[8h;U,`(askcad.com),为工程师增加动力X*r9n2B)h-Q7E9A/[&q:A7g6G8G3u-K(wSet ccball = ThisDrawing.ModelSpace.AddCircle(cc, 0.1) '画半径为0.1的圆
CAD设计论坛#A8O%]4n7K\
moveline = hill.Offset(-0.1) '球心运动轨迹线 vpoints = moveline(0).Coordinates '获得规迹点
Set lay1 = ThisDrawing.Layers.Add(\创建名为\的图层 lay1.LayerOn = False '关闭图层
moveline(0).Layer = \将轨迹线放到关闭的图层中ZoomExtents '显示整个图形
For i = 0 To UBound(vpoints) - 1 Step 2 movep(0) = vpoints(i) '计算移动的轨迹 movep(1) = vpoints(i + 1) ccline.Rotate cc, 0.05 '旋转直线 ccline.Move cc, movep '移动直线ccball.Move cc, movep '移动圆
(^ {$y5|!D7])G7Owww.askcad.com\3]2Q/d+^8pêD设计论坛:E\4V
cc(0) = movep(0) '把当前位置作为下次移动的起点 cc(1) = movep(1)j = j * 1 Next j
www.askcad.com2M4X;g#U2Y.I7s2Q6a;CAD设计论坛(s/\\\8f0i1N
For j = 1 To 50000 '这次循环的目的是让小球移动得慢一点,循环量应根据自已的电脑速度设置
(askcad.com),为工程师增加动力5A9\\\9P,O(cccline.Update '更新Next i End Sub自定
(askcad.com)是国内最专业发展最快的utoCA设计讨论基地论坛云集高手提供CA的教程练习考试软件下载教程下载基础培训等一体化解决方案并推出Pro/Engineer,Unigraphics,SolidWorks相关讨论专区我们的口号:CAD设计论坛为工程师增加动力请记住我们的网址:askcad.com+l\M;U*U6r6c8S2v,r1Z 本课结束,请做思考题:在一条直线上画两个同样大小的圆,然后让这两个圆沿直线相向而行,到互换位置后停下来,尺寸
Autocad VBA初级教程 (第十二课:参数化设计基础)
简单地讲,参数化设计就是根据参数进行精确绘图,绘图所需要的参数也可以由用户手工输入。真正的参数化设计往往需要数据库操作,为了简化程序,把数据库部分放在以后的课程中详细讲解。
本课的例程是画一个标准足球场。足球场长度90~120米,宽度45~90米,而红色标注的尺寸是程序默认的,绿色标注固定不变。
…… 此处隐藏:380字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [学前教育]MC9S12XS256RMV1 xs128芯片手册4
- [学前教育]安东尼语录经典语录
- [学前教育]e级gps控制测量技术设计书
- [学前教育]苏教版2022-2022学年八年级下学期期末
- [学前教育]装修公司推广 营销
- [学前教育]家政服务合同(完整版)
- [学前教育]湖北省2016届高三联考语文试题
- [学前教育]爱立信无涯学习系统LTE题库1-LTE基础知
- [学前教育]揭秘大众柴油车作弊软件原理
- [学前教育]人才流失原因及对策分析
- [学前教育]房屋建筑施工工程劳务分包合同
- [学前教育]国际贸易实务试卷A卷09.6
- [学前教育]校园废品回收活动计划方案书范文格
- [学前教育]电大成本会计试题及答案
- [学前教育]大学物理实验 华南理工出版社 绪论答案
- [学前教育]爱丁堡产后抑郁量表
- [学前教育]液压冲击的危害、产生原因与防止方法(
- [学前教育]学生工作总结高一学生期中考试总结_020
- [学前教育]人民医院医疗废物管理规章制度大全
- [学前教育]阳光维生素的巨大抗癌潜能阅读题答案.d
- 马云在云锋基金江苏论坛闭幕式的发言
- 试论小学体育教育中的心理健康教育-教
- 语文A版一年级下册《语文乐园一》教学
- 2021四川大学物理化学考研真题经验参考
- [人教A版]2015-2016学年高中数学 第二
- 终端网点销售返利协议书
- 江苏省2015年眼科学主治医师青光眼考试
- 2017年部编人教版八年级语文上册教案
- 十一中学七年级英语上册Unit7Howmuchar
- 以赛促教的创新性实验教学机制建设实践
- 平凉市崆峒区2015七年级下生物期末试题
- 琶洲(地块五)A、B塔楼1、2#塔吊基础
- 一级医院工作制度与人员岗位职责
- 2018北京西城区高三二模理科数学试题及
- 炒股密码线技术 - 图文
- 职高学生生涯发展辅导教案
- 语文人教版四年级上册8 世界地图引出的
- 最新最新人教版二年级上册全册数学教案
- 2017高考英语全国2卷精彩试题(有问题
- 普通心理学笔记




