/**
* Copyright actionscriptbible ( http://wonderfl.net/user/actionscriptbible )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/nX9H
*/
package {
import flash.display.Sprite;
import flash.filters.ConvolutionFilter;
public class ch37ex12 extends Sprite {
function ch37ex12() {
var a:TestImage = new TestImage(0.5, 0, 0);
var b:TestImage = new TestImage(0.5, 250, 0);
var c:TestImage = new TestImage(0.5, 0, 167);
var d:TestImage = new TestImage(0.5, 250, 167);
addChild(a);
addChild(b);
addChild(c);
addChild(d);
var aMat:Array = [0, 1, 0,
1, -4, 1,
0, 1, 0]; //edge detect
a.filters = [new ConvolutionFilter(3, 3, aMat)];
var bMat:Array = [ 0, -1, 0,
-1, 5, -1,
0, -1, 0]; //sharpen
b.filters = [new ConvolutionFilter(3, 3, bMat)];
var cMat:Array = [1, 1, 1,
1, 1, 1,
1, 1, 1]; //blur
c.filters = [new ConvolutionFilter(3, 3, cMat, 9)];
var dMat:Array = [-2, -1, 0,
-1, 1, 1,
0, 1, 2]; //emboss
d.filters = [new ConvolutionFilter(3, 3, dMat)];
}
}
}
import flash.display.Loader;
import flash.net.URLRequest;
import flash.system.LoaderContext;
import flash.events.MouseEvent;
import flash.geom.Point;
class TestImage extends Loader {
protected var scale:Number;
protected var origin:Point;
public function TestImage(scale:Number = 1, x:Number = 0, y:Number = 0) {
//photo (CC-BY) Roger Braunstein
//source http://www.flickr.com/photos/rogerimp/2940373537/
var url:String = "http://actionscriptbible.com/files/heiwadoori.jpg";
load(new URLRequest(url), new LoaderContext(true));
this.scale = scale;
this.origin = new Point(x, y);
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
onMouseUp(null);
}
protected function onMouseDown(event:MouseEvent):void {
parent.setChildIndex(this, parent.numChildren-1);
scaleX = scaleY = 1;
x = y = 0;
}
protected function onMouseUp(event:MouseEvent):void {
scaleX = scaleY = scale;
x = origin.x; y = origin.y;
}
}