Chevy | Дата: Среда, 24.08.2011, 14:55 | Сообщение # 1 |
|
Администраторы |
Генералиссимус |
"Нет титула" |
Сообщений: 85 |
|
|
Offline |
| Ускорения объекта
Категория: Движения Источник/Автор: Рич Шуп
Код ActionScript 3
var ball:MovieClip = new Ball(); ball.x = ball.y = 100; addChild(ball); var xVel:Number = 4; var yVel:Number = 4 var xAcc:Number = 1; var yAcc:Number = 1; addEventListener(Event.ENTER_FRAME, onLoop); function onLoop(e:Event):void { ball.x += xVel; ball.y += yVel; xVel += xAcc; yVel += yAcc; }
Сила тяжести
Категория: Физика Источник/Автор: Рич Шуп
Код ActionScript 3
var ball:MovieClip = new Ball(); ball.x = ball.y = 100; addChild(ball); var xVel:Number = 4; var yVel:Number = -10 var yAcc:Number = 1; addEventListener(Event.ENTER_FRAME, onLoop); function onLoop(e:Event):void { ball.x += xVel; ball.y += yVel; yVel += yAcc; }
Сила трения
Категория: Физика Источник/Автор: Рич Шуп
Код ActionScript 3
var ball:MovieClip = new Ball(); ball.x = ball.y = 100; addChild(ball); var speed:Number = 12; var angle:Number = 45; var radians:Number = deg2rad(angle); var xVel:Number = Math.cos(radians) * speed; var yVel:Number = Math.sin(radians) * speed; var frCoeff:Number = .97; addEventListener(Event.ENTER_FRAME, onLoop); function onLoop(e:Event):void { xVel *= frCoeff; yVel *= frCoeff; ball.x += xVel; ball.y += yVel; } function deg2rad(deg:Number):Number { return deg*(Math.PI/180); }
Парадокс Зенона
Категория: Физика Источник/Автор: Рич Шуп
Код ActionScript 3
var ball:MovieClip = new Ball(); ball.x = ball.y = 100; addChild(ball); addEventListener(Event.ENTER_FRAME, onLoop); function onLoop(e:Event):void { ball.x += velFriction(ball.x, mouseX, 8); ball.y += velFriction(ball.y, mouseY, 8); } function velFriction(o:Number , dest:Number, coeff:Number):Number { return (dest-o)/coeff; }
Упругость
Категория: Физика Источник/Автор: Рич Шуп
Код ActionScript 3
var ball:MovieClip = new Ball(); ball.x = ball.y = 100; addChild(ball); var xVel:Number = 0; var yVel:Number = 0; addEventListener(Event.ENTER_FRAME, onLoop); function onLoop(e:Event):void { xVel = velElastic(ball.x, mouseX, .14, .85, xVel); yVel = velElastic(ball.y, mouseY, .14, .85, yVel); ball.x += xVel; ball.y += yVel; } function velElastic(orig:Number , dest:Number, sprConst:Number , damp:Number, elas:Number):Number { elas += -sprConst * (orig - dest); return elas *= damp; }
Еластичность движения
Категория: Физика Источник/Автор: Рич Шуп
Код ActionScript 3
import fl.transitions.Tween; import fl.transitions.easing.*; import flash.display.MovieClip; var ball:MovieClip =new Ball(); ball.x = ball.y =100; addChild(ball); var ballXTween:Tween = new Tween(ball,"x", Elastic.easeOut, 100, 400, 3,true);
Подключения к камере
Категория: Устройства Источник/Автор: Adobe
Код ActionScript 3
package { import flash.display.Sprite; import flash.media.Camera; import flash.media.Video; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.utils.Timer; import flash.events.TimerEvent; import flash.events.StatusEvent; import flash.events.MouseEvent; import flash.system.SecurityPanel; import flash.system.Security; public class Camera_getCameraExample extends Sprite { private var myTextField:TextField; private var cam:Camera; private var t:Timer = new Timer(1000); public function Camera_getCameraExample() { myTextField = new TextField(); myTextField.x = 10; myTextField.y = 10; myTextField.background = true; myTextField.selectable = false; myTextField.autoSize = TextFieldAutoSize.LEFT; cam = Camera.getCamera(); if (!cam) { myTextField.text = "No camera is installed."; } else if (cam.muted) { myTextField.text = "To enable the use of the camera,\n" + "please click on this text field.\n" + "When the Flash Player Settings dialog appears,\n" + "make sure to select the Allow radio button\n" + "to grant access to your camera."; myTextField.addEventListener(MouseEvent.CLICK, clickHandler); }else { myTextField.text = "Connecting"; connectCamera(); } addChild(myTextField); t.addEventListener(TimerEvent.TIMER, timerHandler); } private function clickHandler(e:MouseEvent):void { Security.showSettings(SecurityPanel.PRIVACY); cam.addEventListener(StatusEvent.STATUS, statusHandler); myTextField.removeEventListener(MouseEvent.CLICK, clickHandler); } private function statusHandler(event:StatusEvent):void { if (event.code == "Camera.Unmuted") { connectCamera(); cam.removeEventListener(StatusEvent.STATUS, statusHandler); } } private function connectCamera():void { var vid:Video = new Video(cam.width, cam.height); vid.x = 10; vid.y = 10; vid.attachCamera(cam); addChild(vid); t.start(); } private function timerHandler(event:TimerEvent):void { myTextField.y = cam.height + 20; myTextField.text = ""; myTextField.appendText("bandwidth: " + cam.bandwidth + "\n"); myTextField.appendText("currentFPS: " + Math.round(cam.currentFPS) + "\n"); myTextField.appendText("fps: " + cam.fps + "\n"); myTextField.appendText("keyFrameInterval: " + cam.keyFrameInterval + "\n"); } } }
Запись звука с микрофона
Категория: Устройства Источник/Автор: Adobe Код ActionScript 3
package { import flash.display.Sprite; import flash.events.*; import flash.media.Microphone; import flash.system.Security; public class MicrophoneExample extends Sprite { public function MicrophoneExample() { var mic:Microphone = Microphone.getMicrophone(); Security.showSettings("2"); mic.setLoopBack(true); if (mic != null) { mic.setUseEchoSuppression(true); mic.addEventListener(ActivityEvent.ACTIVITY, activityHandler); mic.addEventListener(StatusEvent.STATUS, statusHandler); } } private function activityHandler(event:ActivityEvent):void { trace("activityHandler: " + event); } private function statusHandler(event:StatusEvent):void { trace("statusHandler: " + event); } } }
Панорама(Движения)
Категория: Работа с изображениями Источник/Автор: ---- Код ActionScript 3
import flash.display.Sprite; import flash.events.MouseEvent; var loader:Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.load(new URLRequest("1.jpg")); var content_mc:Sprite = new Sprite(); function completeHandler(event:Event):void { var image1:Bitmap = (Bitmap)(loader.content); var image2:Bitmap = new Bitmap(image1.bitmapData.clone()); content_mc.addChild(image1); content_mc.addChild(image2); image1.x = 0; image2.x = image1.width; addChildAt(content_mc,0); content_mc.x = 0; } stage.addEventListener(MouseEvent.MOUSE_MOVE, moveMouse); function moveMouse(E:MouseEvent):void { var mcod:Number = E.localX; trace(E.localX); if(mcod > 50) {content_mc.x -= 5;} else {content_mc.x += 5;} if (content_mc.x>0) { content_mc.x= -content_mc.width /2; } else if (content_mc.x < stage.stageWidth - content_mc.width) {content_mc.x= stage.stageWidth - content_mc.width/2 ;} }
|
|
| |
Chevy | Дата: Среда, 24.08.2011, 15:01 | Сообщение # 2 |
|
Администраторы |
Генералиссимус |
"Нет титула" |
Сообщений: 85 |
|
|
Offline |
| Категория: Недокументированный способ Описания: Это способ добавления в мувик скрипта. Все что нужно это указать имя мувика, а также номер кадра и функцию которую добавляем в кадр.
import flash.events.MouseEvent;
a.addFrameScript(13,hello);//а - имя мувика, 0 - кадр, hello - функция (Количество кадров должно быть известно) function hello():void { trace("Hello World!"); }
|
|
| |