|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
与位图图形相比,矢量图形需要的内存和存储空间小很多,因为它们是以数学公式而不是大型数据集来表示的。位图图形之所以更大,是因为图像中的每个像素都需要一组单独的数据来表示。
次要利用了遮罩和beginGradientFill来完成,对呆板请求对照高,呆板不是很好的伴侣慎狂点...
点击检察Flash:
http://tinsgao.googlepages.com/wave.swf
次要代码以下:varWaveArray:Array=newArray();
varrel_btn:MovieClip=this.loader.btn;
this.createEmptyMovieClip("gradient_mc",3);
gradient_mc.cacheAsBitmap=true;
mc.cacheAsBitmap=true;
onMouseDown=function(){
newWave(WaveArray);
};
onEnterFrame=draw;
functiondraw(){
with(gradient_mc){
clear();
spreadMethod="pad";
interpolati;
fillType="radial";
colors=[0x00FFFF,0xFFFFFF,0x00FFFF];
varwal:Number=WaveArray.length;
for(vari:Number=0;i<wal;i++){
alphas=[0,WaveArray.A,0];
vart:Number=WaveArray.R-10;
ratios=[t>0?t:0,WaveArray.R,WaveArray.R+10];
focalPointRatio=0;
matrix={matrixType:"box",x:WaveArray.X-550,y:WaveArray.Y-400,w:550*2,h:400*2,r:180*Math.PI};
beginGradientFill(fillType,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio);
moveTo(0,0);
lineTo(0,400);
lineTo(550,400);
lineTo(550,0);
lineTo(0,0);
endFill();
}
}
mc.setMask(gradient_mc);
}wave.as中的代码以下:///////////////////////////////////////////http://www.25swf.com
//////codeby25swf
//////tinsgao@126.com
//////2006.11.23
////////////////////////////////////////////////////////////////////
importflash.geom.Point;
classWave{
///////////////////////////field/////////////////////////
privatevarm_alpha:Number=100;
privatevarm_ratio:Number=0;
privatevarm_point:Point;
privatevarrel_array:Array;
privatevarm_iner:Number;
////////////////////////////attribute////////////////////
functiongetA(){
returnm_alpha;
}
functiongetR(){
returnm_ratio;
}
functiongetX(){
returnm_point.x;
}
functiongetY(){
returnm_point.y;
}
/////////////////////////////////////////////////////////
functionWave(_array:Array){
this.rel_array=_array;
_array.push(this);
m_point=newPoint(_root._xmouse,_root._ymouse);
this.m_iner=setInterval(function(_rel){
_rel.m_alpha--;
_rel.m_ratio+=2;
if(_rel.m_alpha<=1){
_rel.Del();
clearInterval(_rel.m_iner);
}
},50,this);
}
functionDel(){
for(varainrel_array){
if(rel_array[a]==this){
rel_array.splice(a,1);
}
}
deletethis;
}
}
用flash动画制作软件制作的动画文件很小,这样便于在互联网上传输,而且它采用了流技术,只要下载一部分,就能欣赏动画,而且能一边播放一边传输送数据。 |
|