教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 论文> 其他论文> 多页动画技术

多页动画技术

上传者:网友
|
翻新时间:2023-06-07

多页动画技术

多页动画技术 多页动画技术 多页动画技术 动画设计中消除图像闪烁的一种方法是使用多页动画。多页动画是通过使用页切换技术实现的。页切换改变显示页以绘制出给定动画序列的相邻帧。由于图像通常绘制在不同的页上(不是当前可见页),用户不会看到图像被绘制或擦除。所以,这种技术能产生高质量的动画而没有图像闪烁。进行页切换的详细步骤如下。

1.选择一种至少有两个可用显示页的视频模式(示例中为EGA640×200,16色4页)。

2.使用-setvideomode()函数获取选择的视频模式。在当前显示页(0页)上绘制出序列中的第一帧。

3.在需要绘制出序列中下一帧时,使用-setactivepage()函数设置激活页为备用显示项,仅仅改变激活页(不是可见页)。

4.绘制出下一帧。此帧将被绘制在备用显示页(页

1)上,而当前页(页0)继续被显示。在以后重复这一步时在绘制新的一帧前擦除掉已有的帧。

5.绘制出新的一帧以后,使用-setvisualpage()函数将可见页设置为备用页。此时,备用页成为当前页。

6.重复步骤3到5直到完成了动画序列为止。

以下程序(采用Visual C++)演示了实际的多页动画,例子中的动画序列读者自行设计。

#include <conio.h>

#include <graph.h}

#include <time.h}

#define LAST-FRAME 4/* Total frames in the sequence. */

#define DRAW 1 /* Code for the draw operation. */

#define DELTA-X 10 /* Pixels moved per frame change. */

#define HALF-SECOND 500 /* 500 msec delay between frames

. */

#define MAX-X 600 /* Max X position before termination.

*/

#define SETUP-DISPLAY par

par -setvideomode(-HRES16COLOR); par

#define EXIT-TO-DOS par

par -setvideomode (-DEFAULTMODE); par

/****页切换和绘制动画序列****/

#define PAGE-FLIP(v) par

par if(v==0) v=1; par

else v=0; par

-setactivepage(v); par

-clearscreen(-GCLEARSCREEN); par

-settextposition(1,

1

6); par

-outtext( par "Example:

Multiple Page Animation"); par

draw-frame(current-frame,px,py); par

-setvisualpage(page); par

create-delay(HALF-SECOND); par

int px,py; /* Current character position. */

int page; /* Current page displayed. */

int current-frame; /* Current frame displayed. */

main()

SETUP-DISPLAY

cycle-frames();

EXIT-TO-DOS

cycle-frames()

current-frame=0;

px=0;

py=85;

page=0;

while(px<=MAX-X)

current-frame++;

if (current-frame>LAST-FRAME)

current-frame=2;

PAGE-FLIP(page)

px=px+DELTA-X;

current-frame=1;

PAGE-FLIP(page)

draw-frame(frame,x,y)

int frame,x,y;

switch(frame)

case 1:

frame-1(DRAW,x,y);

break;

case 2:

frame-2(DRAW,x,y);

break;

case 3:

frame-3(DRAW,x,y);

break;

case 4:

frame-4(DRAW,x,y);

break;

create-delay(td)

/**同Borland C++中的delay(td)函数**/

int td;ts2=ts1=clock();ts2=clock();

下载文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

网友最新关注

苹果里的小秘密
可爱的小狗
我想对老师说
四季的脚步
运动会开幕了
小鸡
四季的脚步
团结的兄妹
爱国旗
快乐的夜晚和奇特的月亮
老鹰捉小鸡
诚实的孩子
假如我有一只马良的神笔
小鸭子得救了
爱护花木
建设局开展学习型机关方案
xx局党员下基层方案
关于开展评选居民满意巡防分队活动方案
“五一”期间道路交通安全工作的实施方案
工商局平安创建工作实施方案
开展技能岗位对接专项活动实施方案
"四五"普法检查验收实施方案
学校爱心、诚信、责任性德育活动方案
学校实施素质教育方案
铁路公路干线两侧环境卫生综合整治实施方案
商业街奠基仪式活动方案
学校青少年维权岗活动方案
关于集中开展道路交通安全综合整治工作的实施方案
开展农民进城就业政策宣传活动的实施方案
学校安全教育活动方案
关于中美内部控制制度比较与思考
我国审计市场声誉与质量分析
从会计信息质量角度谈资产减值准备的计得及其审计
政府审计成本控制探析
商业银行实施绩效审计业务探讨
我国发展现代风险导向审计的建议
浅析审计结果的处理处罚
浅谈企业内部控制制度的重要保障
关于加强企业内部审计质量控制的几点思考
论企业环境审计研究
浅谈新时期企业内部审计的作用及发展措施
浅谈建设项目跟踪审计的现状和建议
论内部审计在公司治理中的作用探析
浅论内部审计与内部控制的关系
浅析中国审计准则的修订
《窗前的气球》 教学设计三
《窗前的气球》 教学设计一
《纸船和风筝》 教学设计四
《风娃娃》 教学设计三
《从现在开始》 教学设计三
《酸的和甜的》 教学设计二
《从现在开始》第二课时教学实录
《从现在开始》 第二课时教学设计二
《从现在开始》 教学设计二
《窗前的气球》 教学设计四
《窗前的气球》 教学设计五
《窗前的气球》 教学设计六
《纸船和风筝》 教学设计一
《酸的和甜的》 教学设计三
《窗前的气球》 教学设计二