- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
动态图形的编程技巧
通过学习“简单的动画”的内容后,我们知道了动画设计的思想:画一个图形,等待一段时间后(通过是很短暂的一段时间),然后再将这个图形擦去,小海龟移到另一个位置,再反复从头开始画这个图形,就可以形成动画了。
根据动画的类型,LOGO程序语言中,常用的动画类型可以归纳为以下三种:闪烁动画、旋转动画、移动动画等。接下来,我们就分别来分析一下这三种动画的编程技巧。
闪烁动画的编程技巧
闪烁动画就是小海龟原地不动画的画一个图形,等待一段时间,然后将这个图形擦去,再反复从头开始画这个图形,就形成了闪烁动画了。
例1:画一个会闪烁的红色五角星。
提示:
1、在画图形的时候,小海龟开始画图时的方向与位置必须与画完这个图形后的所在方向与位置保持一致。
2、在擦除原来的图像时,可以采用两种方法:一种是覆盖法,具体方法是用背景颜色画一个跟原来一样的图形或画一个比较原来图形稍大的图形,把原来的图形完全覆盖掉;另一种是擦除法,具体方法是用擦除命令(PE)把原来的图形擦除干净。这两种方法可以灵活运用,根据具体情况而定。
编程设计闪烁红色五角星的程序:
画一个红色的实心五角星,并让小海龟回到原位。 TO WJX
SETPC 12
REPEAT 5 [FD 50 LT 72 FD 50 RT 144 ]
PU RT 20 FD 5 PD FILL BK 5 LT 20
END 把原来五角星擦除程序,采用画背景颜色(白色)相同大小的五角星的方法。 TO WJXPE
SETPC 15
REPEAT 5[FD 50 LT 72 FD 50 RT 144 ]
PU RT 20 FD 5 PD FILL BK 5 LT 20
END 闪烁五角星程序。 TO FLASHWJX
DRAW SETBG 15 RT 90
REPEAT 20 [ WJX WAIT 10 WJXPE WAIT 10]
END
旋转动画的编程技巧
旋转动画编程方法是小海龟在所在位置画一个图形,等待一段时间,将图形擦去,并旋转到一个新的角度后再画出原来的图形,反复从头开始进行这一过程,就形成了旋转动画了。
例2:画一个金光四射的太阳。(太阳旋转)
提示:
画这个太阳旋转的程序,其实就是把太阳光芒画好后,稍等一会儿,把它擦除,并旋转一个角度后再把光芒画出来。所以只要编写画出太阳光芒程序与擦除太阳光芒程序,再把它们用到主程序中就可以了。
画金光四射太阳的程序:
画太阳的光芒的程序。 TO TYG
SETPC 14
REPEAT 30[PU FD 60 PD FD 20 PU BK 80 PD RT 360/30]
END 擦除太阳光芒的程序。 TO TYGPE
REPEAT 30[PU FD 60 PE FD 20 PU BK 80 PD RT 360/30]
END 太阳光旋转的程序: TO SHINE
DRAW SETPC 12
(STAMPOVAL 50 50 “TRUE)
REPEAT 72[ TYG WAIT 10 TYGPE RT 360/72]
END
移动动画编程技巧。
移动动画编程方法是小海龟在所在位置画一个图形,等待一段时间,将图形擦去,并移动画到一个新的位置后再画出原来的图形,反复从头开始进行这一过程,就形成了移动动画了。
例3:画一辆会开动的小车。
提示:
1、编程设计移动动画程序的时候,较为重要的一项是做到在设计单个静态图形之前与设计完成单个静态图形之后保持小海龟的位置与方向一致,才能较为方便的编写移动动画。在例3中,就是要求小海龟在画这辆小汽车之前与画完成小汽车之后保持方向与位置的一致。
2、类似于例3中的小汽车这样较为复杂的图形,用PE命令去擦显示不太方便,所以可以考虑用背景色把它覆盖掉。在用背景色覆盖掉小汽车的时,我们也可以用一种较为简单的方法:移动到小汽车左下角,用背景画一个略大于小汽车的实心长方形,再回到移动之前的位置就可以了。
画小汽车移动的程序。
画小汽车并回到原位的程序 (见前一讲例2的程序 CAR,注意把程序中的DRAW命令移除。想想看为什么?) 将小汽车图形擦除后回到原位程序。 TO CARPE
PU RT 90 BK 80 LT 90 BK 60 PD
SETPC 15 (STAMPRECT 160 100 TRUE)
PU FD 60 RT 90 FD 80 LT 90 PD
END 小汽车移动程序。 TO CARMOVE
DRAW HT SETBG 15
REPEAT 20[CAR WAIT 10 CARPE PU RT 90 FD 5 PD LT 90]
END
通
文档评论(0)