欢迎来到天天文库
浏览记录
ID:24170580
大小:50.50 KB
页数:4页
时间:2018-11-13
《c语言中动画技术的实现方法》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、C语言中动画技术的实现方法摘要:动画具有突出并强化事物特征、实现工作模拟、进行图形变换等多种功能,使所开发的软件科学合理、生动形象。本文介绍了动画的基本原理及利用C语言程序设计实现动画的常用方法。 关键词:C语言动画技术实现方法图形处理函数 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。C语言具有强大的绘图能力,可移植性好,并具备很强的数据处理能力,因此适于编写系统软件、二
2、维、三维图形和动画。利用C语言提供的图形处理函数设计动画程序,可以用于游戏娱乐、辅助教学、实验模拟和仿真等计算机辅助设计,具有较强的实用性。下面介绍几种C语言中图形动画技术的实现方法。 一、动画实现的原理 动画的制作原理类似于电影,它是利用了人的视觉效应,使一幅图像在不同时间和位置多次出现,从而产生动画效果。动画的实现其实主要依赖的是人的视觉残留作用,人的视觉有一种惰性,当看一幅画的时候这幅画的信息就保存在眼睛里了,即使这幅画突然消失,保存在眼睛里的信息还将保留一会儿(大约十分之一秒)。大脑的感觉就好像这幅画还存
3、在似的。人不会感觉画面是断续的,从而产生动画的效果。因此动画就是由一连串许许多多的单幅图像,在程序中快速反复地循环显示而产生。因此我们可以用C语言提供的许多关于图形的函数来方便地实现动画,从前面的动画原理可以知道有两个关键的地方:一是图形图像的产生方式,要求产生的图像要准确。二是两幅图之间的转换,要求转换速度要快,不能产生闪烁感。只有这样实现的动画才逼真。 二、C语言动画设计常用方法 1.利用目标移动覆盖技术实现动画 动画的形式是多种多样的,目标移动是其中之一,即将被移动的目标由屏幕的一个位置移动到另一个位置,
4、直接一步到位移动,没有中间过程,会使人有生硬突然感,动感不强。为了实现良好的动感,必须根据目标的大小及移动距离的长短分成若干步来实现,每动一步先用底色覆盖原来的目标,再将移动目标复现在下一位置,这样逐步到达目的地。由于视觉暂留这一人的生理现象,人的肉眼所见此移动过程具有真实感。很多资料中又将这种动画实现方法叫做中间化。用此法还可以进行平移、变形、旋转等动画设计。 2.利用擦除法实现动画 擦除法动画设计方法在很多的动画制作工具中大量使用,它的设计原理是:利用同色原理,当图形色与背景色相同时人眼不能感知。在动画设计中
5、,当一个位置画了一张图像并使图像色与背景色也相异,此时将先前画的图像在原位置再画一张,并使图像色与背景色相同,这样人眼只能看到新画的一张图像而看不到先前画的图像,从而先前画的图像被擦除了。这样连续画多张图像并在每画一张新的图像,将原来的图像擦除,在观察者看来就实现了动画的效果。擦除法动画设计便于操作,并且它的程序运行所需内存空间小,程序执行过程中不需要图形存入内存再从内存调出,节省了大量内存空间。 3.利用调色板实现动画 调色板是存放当前可用颜色的一张表,C语言定义了一个名为palette的预定义结构来存放调色板
6、信息。该数据类型定义为: #defineMAXCOLCRS15 Structpalettetype { Unsignedcharsize; Unsignedcharcolor } 利用getpalette()函数可以获取当前调色板的信息,其方法为; Structpalettetypepa; getpalette(
此文档下载收益归作者所有