动画API技术路线由于采用动态模拟的方式表达应急预案过程更加清晰合理。所以拟定在公司的WEBGIS产品上实现标绘符号的动态模拟,以动画的方式处理动态模拟对象,以模拟实体目标随时间的变化、所产生的行为和事件等。动态模拟的结果将以计算机动画的方式来体现,背景为GIS中的地图,并且使各种动作行为建立在真实的地理信息基础上的。在现有各种静态标绘算法已经基本实现的情况下,现阶段的主要任务为制定一套可行的动画API。图形符号动画类型主要包括移动、闪烁、缩放、变形、显隐等。以下为对于各种动画的分类进行描述。1、动画的分类描述1.1移动通过符号位置的移动可以直观表现实体要素的运动路线、运动速度、运动的时间等信息。在添加移动动画时,需要在地图上绘制移动路线,这条路线由多个移动点组成,(X,Y)值为坐标点,T为实体运动到该点的时间,每一个移动点的坐标和时间被存储下来,根据这些已知移动点的信息采用内插方法可以计算实体要素在移动时任意时刻的位置。1.2闪烁在闪烁动画的执行时间内,使符号颜色按照规定的时间间隔交替变化,或者交替地出现和隐藏。闪烁动画主要用于体现一些重要的要素,或者正在发生变化的要素,如事故附近重要的人防工程、正在燃烧的建筑物等。1.3缩放在缩放动画的执行时间内,符号的大小可以按照规定的频率放大和缩小,符号可以由大向小或由小向大缩放,同时可以对缩放的倍数进行设置。缩放动作可以体现要素属性随时间的变化,如表现爆炸的炸点图形符号缩放可以使爆炸过程更加形象、生动。1.4变形在变形动画的执行时间,符号的形状产生变化,变化的具体情况根据符号变形点的坐标变化确定。不同的图形符号变形点个数不同,在变形动作的程序实现中,主要存储变形动作的开始、结束时间、各个变形点变化后的坐标位置。在变形动画播放时,根据这些变形点的坐标采用内插算法得到图形符号每一个时刻的坐标位置,然后在该位置重新绘制出来。1.5显隐在显隐动画的执行时间,符号出现或者隐藏。显隐动画可以表现被毁伤或者离开的实体要素,如意外发生的爆炸属于突然出现的要素。在程序实现中,主要采用符号的绘制或者不绘制来体现显示或者隐藏。1.6属性变化在动画的执行时间,即某一时刻符号的属性发生变化,如颜色、衬线色等,主要表现预案要素随时间推移的性质改变,如战役中我军攻陷敌军阵地,阵地指挥所的符号通常由蓝色变为红色。1.7符号改变在动画的执行时间,符号本身改变,以表示要素信息发生本质的改变。每一个图形符号可以添加多个动画,这些动画可以是同种类型或者不同类型的,因此可以表现更加丰富的预案态势信息。2.技术路线的综述与选择2.1动画技术综述2.1.1动画实现原理构成2D动画的基本方法是将二维图形应用于关键帧,实现图形在关键帧上的变形、移位、淡入淡出、旋转、缩放等方式,视觉上应用人眼视觉暂留(根据光线强度不同,人眼视觉暂留时间大约在0.06-0.2秒之间)的特点,而生成的1秒12张以上图片(关键帧)的动画效果。2.1.2web动画实现技术现阶段web动画的实现技术主要有flash和基于html5的canvas动画技术。由于flash动画显然不是适合于公司平台的动画技术,所以此处只对html5的canvas动画进行简要介绍。HTML5提供了Canvas标记元素来实现画布功能。Canvas标记元素是一种全新的动画制作理念,依靠编辑WEB页所需的脚本语言JavaScript的功能语句就可实现对图形的绘制,Canvas标记元素中的JavaScript的功能语句可用来实现对矢量图形,栅格图形,复杂动画画面及特效等的绘制。然后将这些功能语句嵌入到WEB页中,在浏览器上就可以看到所绘制的图形或动画画面扩特效,此过程简单、方法,操作容易。2.2公司平台可选技术方案2.2.1动画API的要求和要实现的目标首先要求能够尽量结合现有平台封装API进行开发,降低开发难度,提高工作效率,并且有利于平台的综合维护,其次能够实现对现有标绘图形添加第一部分所述的各种动画内容,实现最基本的动态标绘功能。2.2.2可选方案简介(1)利用现有的第三方封装了canvas动画函数库。(2)基于最底层的html5中的canvasAPI进行开发。(3)利用公司现有平台封装好的API,结合动画技术的基本原理编写独立的动画API函数库。2.3方案介绍2.4各种动画类型实现过程简述