摘要:var myMatrix:Matrix = mc.transform.matrix;//计算原点/*var tempx,tempy;tempx = mc.x + mc.width / 2;tempy = mc.y + mc.height / 2;myMatrix.translate(-tempx,-tempy);myMatrix.rotate(30*Math.PI/180);myMatrix.translate(tempx,tempy);mc.transform.matrix = myMatrix;*//*var tempx,tempy;tempx=mc.x+mc.width/2;tempy=
阅读全文
摘要:为什么要去扣图?扣图的一般应用主要是为了处理一些png图片的大小问题,bitmapdata的大小消耗是bitmapdata的高宽大小决定的,因为一张png图包含的透明部分而设计往往懒于将每张图片都做到最小,所以一般这部分应该使用程序实现的,我们可以编写一个air项目对图片进行批处理,也可以根据实际在程序运行期间实现对图像大小的优化。怎么样去扣图?主要方法用到getColorBoundsRect来获取非透明区域的大小,getColorBoundsRect的参数可以方便的让我们赛选出非透明区域处理过程如下:bitmapdata.getColorBoundsRect(0xFF000000,0x000
阅读全文
摘要://弧度=角度*Math.PI/180;//角度=弧度*180/Math.PI;var speed:Number = 5;addEventListener(Event.ENTER_FRAME,onEnterFrame);function onEnterFrame(event:Event):void{ var dx:Number = mouseX - ball.x; var dy:Number = mouseY - ball.y; var angle:Number = Math.atan2(dy,dx); var dist:Number = Math.sqrt(dx * dx + dy * dy
阅读全文
摘要:/*舞台上有个mc*/package { import flash.display.Sprite; import flash.events.Event; public class Bouncing extends Sprite { private var ball:Ball; private var vx:Number; private var vy:Number; //弹力系数有所损耗所以为-0.7不计损耗为-1 private var bounce:Number = -0.7; public function Bouncing() { init(); } private function
阅读全文
摘要:/*舞台上有mc1,mc2*/var speed:Number = 2;var dx:Number = mc1.x - mc2.x;var dy:Number = mc1.y - mc2.y;var dist:Number = Math.sqrt(dx * dx + dy * dy);var radians:Number = Math.atan2(dy,dx);//弧度var drgress:Number=radians*180/Math.PI;//弧度转化成度//(radians=drgress/(180/Math.PI)||radians=drgress/180*Math.PI)trace
阅读全文
摘要:/*尽可能使用 Vector 类而不是 Array 类。 Flash Player 10 引入了 Vector 类,其读写访问速度比 Array 类快。一个简单的基准就可说明 Vector 类与 Array 类相比的优势所在。以下代码显示 Array 类的基准:*/var coordinates:Array = new Array(); var started:Number = getTimer(); for (var i:int = 0; i< 300000; i++) { coordinates[i] = Math.random()*1024; } trace(getTimer()
阅读全文
摘要:/*var commands:Vector.<int > = new Vector.<int > (5,true);commands[0] = GraphicsPathCommand.MOVE_TO;commands[1] = GraphicsPathCommand.LINE_TO;commands[2] = GraphicsPathCommand.LINE_TO;commands[3] = GraphicsPathCommand.LINE_TO;commands[4] = GraphicsPathCommand.LINE_TO;var data:Vector.<
阅读全文
摘要:/*AS3.0包括9个滤镜斜角滤镜(BevelFilter 类)模糊滤镜(BlurFilter 类)投影滤镜(DropShadowFilter 类)发光滤镜(GlowFilter 类)渐变斜角滤镜(GradientBevelFilter 类)渐变发光滤镜(GradientGlowFilter 类)颜色矩阵滤镜(ColorMatrixFilter 类)卷积滤镜(ConvolutionFilter 类)置换图滤镜(DisplacementMapFilter 类)前6个为简单滤镜,后3个为复杂滤镜.复杂滤镜只能由actionscript创建*//*库中有个元件链接为kt//1.斜角滤镜(BevelF
阅读全文
摘要:package{ import flash.display.Sprite; public class Ball extends Sprite { private var radius:Number = 5; private var color:Number = 0x3200ff; public function Ball() { init(); } public function init():void { this.graphics.beginFill(color); this.graphics.drawCircle(0, 0, radius); this.graphics.endFill(
阅读全文
摘要:import flash.events.MouseEvent;var darw:Boolean;stage.addEventListener(MouseEvent.MOUSE_DOWN,down);stage.addEventListener(MouseEvent.MOUSE_MOVE,Move);stage.addEventListener(MouseEvent.MOUSE_UP,up);function down(e:MouseEvent){ darw = true; var color:int=Math.random() * 0xffffff + 0xff000000 this.grap
阅读全文
摘要:index.base.func.Random类:代码:public final class Random提供了9种静态方法来获取不同的随机值构造函数:public function Random()如果直接实例化该类,将抛出错误boolean静态属性:public static function get boolean():Boolean随机获取一个布尔值,即可能是true,也可能是falsewave静态属性:public static function get wave():int随机获取一个正负波动值,即可能是1,也可能是-1integer静态方法:public static functi
阅读全文
摘要:var loader1:Loader =new Loader();var loader2:Loader =new Loader();var dz1:URLRequest = new URLRequest("a.swf");var dz2:URLRequest = new URLRequest("b.swf");//Abtn,Bbtn为按钮Abtn.addEventListener(MouseEvent.CLICK,cd1);Bbtn.addEventListener(MouseEvent.CLICK,cd2);function cd1(e:MouseEv
阅读全文
摘要:1、as3ebaylib http://code.google.com/p/as3ebaylib/2、as3youtubelib http://code.google.com/p/as3youtubelib/3、as3flickrlib http://code.google.com/p/as3flickrlib/4、Yahoo ASTRA Flash Components http://developer.yahoo.com/flash/astra-flash/5、facebook-as3 http://code.google.com/p/facebook-as3/6、as3awss3lib
阅读全文
摘要:importflash.display.MovieClip;importflash.display.Sprite;varstag:Sprite=newSprite();addChild(stag);varmoviec:MovieClip=newMovieClip;stag.addChild(moviec);varS_angle:int=60;DrawSector(moviec,200,200,100,S_angle,270,0xffcc00);functionDrawSector(mc:MovieClip,x:Number=200,y:Number=200,r:Number=100,angle
阅读全文
摘要:AS3中常用到的公式基本三角函数的计算:角的正弦值 = 对边 / 斜边角的余弦值 = 邻边 / 斜边角的正切值 = 对边 / 邻边角度制与弧度制的相互转换:弧度 = 角度 * Math.PI / 180角度 = 弧度 * 180 / Math.PI计算两点间距离:dx = x2 – x1;dy = y2 – y1;dist = Math.sqrt(dx*dx + dy*dy);缓动公式:sprite.x += (targetX - sprite.x) * easing;//easing为缓动系数变量sprite.y += (targetY - sprite.y) * easing;弹性公式:v
阅读全文
摘要:package{importflash.display.Sprite;publicclassBallextendsSprite{publicvarradius:Number;publicvarcolor:uint;publicfunctionBall(radius:Number=10,color:uint=0Xff0000){this.radius=radius;this.color=color;draw();}publicfunctiondraw():void{graphics.beginFill(color);graphics.drawCircle(0,0,radius);graphics
阅读全文
摘要:import flash.events.TextEvent;/*舞台上有个文本框 _eventTxt若要指定 link 事件,请在 href 属性中使用 event 方案,而不是 http 方案。 例如,使用 href="event:myText" 而不是 href="http://myURL";当用户单击包含 event 方案的超文本链接时,文本字段将调度 link TextEvent,并将其 text 属性设置为“myText”。 可随后创建一个 ActionScript 函数,每次调度 link TextEvent 时都会执行该函数。还可以使用样式
阅读全文
摘要:var D:Date = StringToDate.parse("2011-03-04 15:22:21");var d:Date = StringToDate.parse("2011-03-09 13:22:21");showTimerTxt(d,D);function showTimerTxt(d:Date,D:Date):void{ var time:Number=(d.getTime()-D.getTime())/1000/60/60/24; trace(d.getTime()-D.getTime()); if (time >= 1) {
阅读全文
摘要:function listProperties(obj, objName) { var result = ""; for (var i in obj) { result += objName + "." + i + "=" + obj[i] + "\n"; } alert(result);} /*库中有个MC*/var mc:MC;var arr:Array = new Array ;for (var i:int=0; i<10; i++){ mc = new MC ; mc.x = 100; mc.y =
阅读全文
摘要:/*让舞台上的btn灰掉*/var matrix:Array = new Array();matrix = matrix.concat([.3,.59,.11,0,0]);// redmatrix = matrix.concat([.3,.59,.11,0,0]);// greenmatrix = matrix.concat([.3,.59,.11,0,0]);// bluematrix = matrix.concat([0,0,0,1,0]);// alpha var filter:ColorMatrixFilter = new ColorMatrixFilter(matrix);btn.f
阅读全文
摘要:/*舞台有个myMovieClip*/import fl.transitions.*;import fl.transitions.easing.*;var myTransitionManager:TransitionManager = new TransitionManager(myMovieClip);//myTransitionManager.startTransition({type:Fly, direction:Transition.IN, duration:1, easing:Bounce.easeOut});myTransitionManager.startTransition({
阅读全文
摘要:/*帧数的计算是从0的位置开始的,所以在使用addFrameScript的时候34代表的即是第35帧.舞台上有个35帧的mc*/mc.addFrameScript(34,output);function output(){ mc.stop(); trace("播放完成");}
阅读全文