首页 教育论文中心 论文分类 论文搜索 论文发表 汇款确认 会员专区 在线购卡 服务帮助 联系我们 网站地图
当前位置:教育论文中心首页--计算机小学课改经验论文--多页动画技术
推荐论文
·做好“领头羊”不做“牧羊
·作个“五心”班主任
·班主任工作四环节
·班主任要创造性地使用《德
·班主任在郊游中的角色
·在小学数学教学中培养儿童
·批改小学数学作业的几种策

·提高小学数学教学质量的两
·在小学数学教学中对学生进
·在小学数学教学中巧妙安排
科目列表
市场营销 管理理论 人力资源
电子商务 社会实践 先进教育
伦理道德 艺术理论 环境保护
农村研究 交通相关 烟草论文
电子电气 财务分析 融资决策
电影艺术 国学论文 材料工程
语文论文 数学论文 英语论文
政治论文 物理论文 化学论文
生物论文 美术论文 历史论文
地理论文 信息技术 班主任
音乐论文 体育论文 劳技论文
自然论文 德育管理 农村教育
素质教育 三个代表 旅游管理
国际贸易 哲学论文 工商管理
证券金融 社会学 审计论文
会计论文 建筑论文 电力论文
水利论文 园林景观 农林学
中医学 西医学 心理学
公安论文 法学法律 思想汇报
法律文书 总结报告 演讲稿
物业管理 经济学 论文指导
计算机 护理论文 社会调查
军事论文 化工论文 财政税收
保险论文 物流论文 语言教育
教育教学 给水排水 暖通论文
结构论文 综合类别  

 
多页动画技术

动画设计中消除图像闪烁的小学课改经验论文一种方法是使用多页动画。多页动画是通过使用页切换技术实现的小学课改经验论文。页切换改变显示页以绘制出给定动画序列的相邻帧。由于图像通常绘制在不同的页上(不是当前可见页),用户不会看到图像被绘制或擦除。所以,这种技术能产生高质量的动画而没有图像闪烁。进行页切换的详细步骤如下。
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,16); \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;
time-t ts1,ts2;
ts2=ts1=clock();
while(ts1+td>ts2)
ts2=clock();
 
<<<<<全文未完>>>>> 全文字数约392字
是否要阅读全文?点卡会员将扣除1点!点击阅读全文
 
 
 
版权所有 教育论文中心 Copyright(C) All Rights Reserved
联系方式: QQ:277865656
或写信给我