计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

FLIC动画文件的播放程序设计(1)

2015-03-19 01:54
导读:计算机应用论文论文,FLIC动画文件的播放程序设计(1)论文样本,在线游览或下载,科教论文网海量论文供你参考: Autodesk公司的三维动画设计软件3DS在我国已广泛使用,其良好的性
Autodesk公司的三维动画设计软件3DS在我国已广泛使用,其良好的性能为计算机专家和艺术家所肯定。其动画存储文件FLIC也给系统提供了存储和显示的方便。下面具体分析FLIC文件的格式及播放程序的设计。
一、FLIC文件格式的概述
FLIC文件事实上是对一个静止画面序列的描述,连续显示这一序列便可在上产生动画效果。FLIC文件结构简洁,弹出速度快,虽然每种基色最多只有256级灰度,图像深度只有8位,但使用起来很方便。
FLIC文件有两种类型:FLI文件和FLC文件。FLC文是FLI文件的进一步发展,它采用更高效的压缩技术,且其分辨率也不仅限于320×200。我们在PC上经常使用的FLI文件,因为它和VGA的320×200×256显示相匹配。
FLIC文件采取的压缩技术原理就是仅保存前一帧中改变的部分。这样占的空间小,弹出速度快。FLIC文件的结果可分为3个层次:文件层、帧层和块层。文件层给出了FLIC文件的基本特征。帧层定义了帧的缓冲和块中块的数目。块层包括块的大小、类型和实际数据。这样的层次结构很容易实现,特别是可以增加块的类型以满足新的需要,同时无需涉及原定义。
二、各层头的结构
1.FLI文件格式的结构定义
①文件头的结构定义
文件头长度为80H字节,其C语言结构定义如下
/* fli file hedaer struct */
typedef struct {
unsigned long fli-size;/* 00H:文件总长度 */
unsigned int magic; /* 04H:文件格式,FLC=AF12;
FLI=AF11; */
unsigned int frames-number; /* 06H:FLIC的帧数 */
unsigned int screen-width; /* 08H:屏幕宽度 */
unsigned int screen-height; /* 0AH:屏幕高度 */
unsigned int unuserd; /* 0CH:保留未用 */
unsigned int flags; /* 0EH:标志=0003 */
unsigned int speed; /* 10H:帧间播放速度单位 */
unsigned long next; /* 12H:置为0 */
unsigned long frit; /* 16H:置为0 */
unsigned char fli-expand[102]; /* 1AH:保留作扩展用=0 */

(转载自中国科教评价网www.nseac.com )


} FLIHEAD;
②帧头的结构定义
帧头长度为10H字节,其C语言结构定义如下:
/* frames header struct */
typedef struct {
unsigned long size-frame; /* 00H:帧大小,包括本帧头 */
unsigned int magic; /* 04H:帧标识字=0F1FAH */
unsigned int chunks; /* 06H:本帧块数 */
unsigned char expand[8]; /* 08H:保留未用=0 */
} FRAMESHEAD;
③块头的结构定义
块头长度为6H字节,其C语言结构定义如下:
/* chunk header struct */
typedef struct {
unsigned long size-chunk; /* 00H:块大小 */
unsigned type-chunk; /* 04H:块类型 */
} CHUNKHEAD;
2.FLC文件格式的结构定义
文件头长度为80H字节,其C语言结构定义如下:
/* fli file header struct */
typedef struct {
unsigned long fli-size; /* 00H:文件总长度 */
unsigned int magic; /* 04H:文件格式,FLC=AF12;
FLI=AF11; */
unsigned int frames-number; /* 06H:FLIC的帧数 */
unsigned int screen-width; /* 08H:屏幕宽度 */
unsigned int screen-height; /* 0AH:屏幕高度 */
unsigned int depth; /* 0CH:图像深度 */
unsigned int flags; /* 0EH:标志=0003 */
unsigned int speed; /* 10H:帧间播放速度单位
FLC=1ms, FLI=1/70s */
unsigned int reserved-1; /* 14H:保留未用 */
unsigned long createtime;
unsigned long creator;
unsigned long updatetime;
unsigned long updater;
unsigned int aspectx; /* 创建文件时的显示屏幕像素大小的纵横比,VGA320×200
unsigned int aspecty; 为6∶5 */
unsigned char reserved-2[0x26]; /* 保留未用,=0 */
unsigned long offsetframel; /* 50H:第一帧画面相对于文件
上一篇:可编程序控制器教学现状分析及课程建设研究( 下一篇:没有了