版权所有不得翻印

版权所有不得翻印

ID:19261374

大小:51.50 KB

页数:6页

时间:2018-09-28

版权所有不得翻印_第1页
版权所有不得翻印_第2页
版权所有不得翻印_第3页
版权所有不得翻印_第4页
版权所有不得翻印_第5页
资源描述:

《版权所有不得翻印》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、版权所有不得翻印庆祝鹏程C语言教学网站建站一周年C语言高级程序设计讲座第二讲平面动画的设计方法讲座技术支持:http://202.112.86.129/联系电子邮件:pch1982cn@yahoo.com.cn这一讲我们的主要任务是先复习一下上一讲的学习内容,然后由制作静止的图形过渡到制作一个简单的动画。学习目标·平面动画的实现方法·通过实例理解动画的制作,并能自己动手制作小动画平面动画的实现方法随着计算机技术的普及应用,动画技术作为计算机图形学的一部分,已广泛用于制作动画片、游戏和进行辅助教学等方面。所谓动画技术指的是屏幕上显示出来的画面或者其中的一部分,能够按照

2、一定的规则及要求在屏幕上移动或变幻,从而实现由计算机显示的图形能够动态变换。可见,实现动画的关键在于图形生成、复现和消隐。产生动画所采用的方法,归结起来有以下几种:(1)BITBLT动画(如图10-1所示),亦称图形阵列动画、快照动画和图形块,关键在于画面存储和重放,类似制作幻灯片,通过将整个动画过程划分为一个片断,作为一副画显示在屏幕的一个区域,在将屏幕图形像素存放在一个文件中;进行动态显示时,在将存储的图像释放,显示在指定画面,实现了动画效果。这种方法主要用于处理屏幕的一部分,需要经过内存申请(用于存储显示缓冲区中的一个矩形方块的图形数据)、读取位图并存入内存、

3、再将内存中存储的图形数据置于显示器指定位置,同时释放内存供它用。这样,便得到了动画的效果。动画速度受到显示分辨率、显示模式及图形大小等限制。(2)线框动画,亦称全屏动画,页面动画和迭代动画,关键在于图形页面的互换,利用计算机图形显示器在一定工作模式下具有多个页面的特点,并分别作为显示页和绘图页,图形在这两个页面上交换,实现实时动画。这种方法的处理对象是分别存放在不同图形页面上的一系列全屏图像,并通过一个独立的子程序以适当的顺序扫描有关页面,得到动画的效果。(3)实时动画,亦称现场动画、乒乓动画、隐藏页面动画和动态页面动画,与上述两种方法有本质区别。前面两种方法都是在

4、开始动画序列之前,已经将所有图像画好,并存储起来;而实时动画则是在动画开始时才绘制图像,需要分时处理图像生成和动画实现。(4)色彩循环动画,利用调色板设置指令,来改变图像颜色,让可见图像消失为背景,同时又立即使用第二条调色板设置指令恢复另一幅图像的正确颜色。两幅图像交替出现,不断重复(即图像本色与背景色),便获得实时动画效果。鹏程C语言教学网站第6页共6页2003-8-2C语言动画制作举例滚动的小车#definePI3.1415926#definestep10#defineR10#include#include#include

5、raphics.h>#include#includemain(){intgdriver=DETECT,gmode;staticintstartx=5;staticintstarty=100;intmaxx,l=1,n=1;doubledalta=20,angle;intsize;void*image;initgraph(&gdriver,&gmode,"");cleardevice();setbkcolor(BLUE);size=imagesize(startx,starty,startx+60,starty+60);image=(u

6、nsignedchar*)malloc(size);maxx=getmaxx();while(!kbhit()){if(l==1){n++;angle=-1*(n*step)/PI*180/R;if((int)(-1*angle)%360(maxx-70)/step)l=0;}if(l==0){--n;angle=-1*(n*step)/R/PI*180;if((int)(-1*angle)%360

7、angle(startx+n*step,starty,startx+n*step+60,starty+40);pieslice(startx+n*step+15,starty+50,angle,angle-dalta,10);pieslice(startx+n*step+45,starty+50,angle,angle-dalta,10);setcolor(GREEN);setfillstyle(SOLID_FILL,GREEN);circle(startx+n*step+15,starty+50,10);circle(startx+n*step+45,star

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。