flash特效原理:链式模型的使用1

            出去运动一会,我忽然有一个概念在脑海里面浮现,于是将这个想法定义为“链式模型的使用”,听起来感觉有点怪异的味道,每逢出现一个名字的时候,我们会尝试给它一个定义,其实说白一句,它就是一个链表(数据结构的模型)。通过使用这个模型可以帮助我们解决flash 当中很多的常用的运动特效。听起来是不是很糊涂?举个例子,如果你喜欢coverflow效果,这种效果经常使用到左右的切换的交互,每一次运动交互,其他的图片会跟随着运动。如果使用双向的链式结构可以轻松解决到coverflow每一张图片的运动后的位置问题,因为双向链式的结构可以保存了前后节点的位置信息。

      在理解这种结构之前,我们做一些简单的实验,以帮助我们理解这种模型的使用。我们知道使用数组可以按顺序保存到数据,而链表的使用,特殊之处在于它的节点可以记录上一个或者下一个节点信息。利用 这个特性我们解决一些特效运动位置的问题了。

   



    看下面的示意图,我们先从一个简单的实验开始。

     

 

      在舞台上我们创建一个Sprite对象将它名为shape,这个对象位置开始值为x=0,我们希望这个mc运动到x=100的位置上。

    下面,我们使用greensock 提供的TweenLite 缓动类实现这种运动效果(要是不清楚这个类,可以到这里下载相关的类 )

   http://www.greensock.com/tweenlite/

     下载地址: http://www.greensock.com/as/greensock-as3.zip  

package 
{

	import flash.display.Sprite;
	import flash.events.*;
	import com.greensock.TweenLite;
	public class Test extends Sprite
	{
		public function test()
		{
			init();
		}

		private function init():void
		{
			var shape:Sprite=new Sprite();
			shape.graphics.beginFill(0x00CCCC);
			shape.graphics.drawRect(0,50,50);
			shape.graphics.endFill();
			shape.y=50;
			addChild(shape);
			TweenLite.to(shape,0.5,{x:100});//缓动到100 的位置
		}
	}

}

  这个程序很简单,它的实验目的就是希望我们使用一个Sprite,做一个缓动的运动。

而接下来,我们需要构建一个简单的链式模型,通过这个模型解决我们一些特效的表现问题。

相关文章

  译序:JWMediaPlayer是开源的网页使用的Flash播放器。本...
    Flash编程原理都是只能将1写为0,而不能将0写成1.所...
 上传setenvgatewayip192.168.1.1;setenvserverip192.168.1...
Error:FlashDownloadFailed-"Cortex-M3"出现一般有...
jPlayer是一个用于控制和播放mp3文件的jQuery插件。它在后台...
#ifndef__FONTUPD_H__#define__FONTUPD_H__#include"sy...