Bu yazımdan itibaren AS3 hakkında küçük ipuçları da yazmayaca başlayacağım.Bugun gördüğüm ve sizlerle paylaşmak istediğim bir küçük nokta var. Matrix ile bitmapdatanın hem scale edilişini ve çevirilmesine ilişkin örnek:
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/halo" width="750" height="125" initialize="init()"> <fx:Script> <![CDATA[ import flash.geom.Matrix; private var tmp_bitmapd:BitmapData = new BitmapData(75,50); private var derece:Number = 0; private function init():void{ this.addEventListener(Event.ENTER_FRAME,dondur); var spr:Sprite = new Sprite(); spr.graphics.beginFill(0xFF0000,0.8); spr.graphics.drawRect(0,0,50,50); spr.graphics.endFill(); tmp_bitmapd.draw(spr); } private function dondur(evt:Event):void{ derece++; var mtrx:Matrix = new Matrix(); mtrx.translate( -tmp_bitmapd.width / 2 ,-tmp_bitmapd.width / 2); mtrx.rotate(derece * (Math.PI / 180)); mtrx.translate( tmp_bitmapd.width / 2 ,tmp_bitmapd.width / 2 ); imageView.graphics.clear(); imageView.graphics.beginBitmapFill(tmp_bitmapd,mtrx,false); imageView.graphics.drawRect(0, 0, imageView.width, imageView.height); imageView.graphics.endFill(); } ]]> </fx:Script> <mx:Image id="imageView" width="75" height="50"/> </s:Application>
Demo: