DistortionButton
♥0 |
Line 62 |
Modified 2010-01-24 22:41:42 |
MIT License
archived:2017-03-20 03:40:16
ActionScript3 source code
/**
* Copyright shaman ( http://wonderfl.net/user/shaman )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/kUfp
*/
package
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.BitmapDataChannel;
import flash.filters.DisplacementMapFilter;
import flash.text.TextFormatAlign;
import flash.text.TextFormat;
import flash.text.TextField;
import flash.display.Graphics;
import flash.display.Sprite;
[SWF (width="600",height="600",backgroundColor="#efefef" )]
public class DistortionButton extends Sprite
{
private var button:Sprite;
private var dfilter:DisplacementMapFilter;
private var dfilterMap:BitmapData;
public function DistortionButton()
{
init();
}
private function init():void
{
button=new Sprite;
addChild(button);
prepareButton();
prepareDistortion();
onResize();
}
private function prepareDistortion():void
{
dfilterMap=new BitmapData(128,128,false,0);
dfilterMap.perlinNoise(64,64,4,2010,false,false,BitmapDataChannel.RED,true);
addChild(new Bitmap(dfilterMap));
dfilter=new DisplacementMapFilter();
dfilter.componentX=BitmapDataChannel.RED;
dfilter.scaleX=10;
//dfilter.mapBitmap=new BitmapData;
}
private function prepareButton():void
{
var g:Graphics=button.graphics;
g.lineStyle(2,0);
g.beginFill(0x005eef,1);
g.drawRoundRect(0,0,200,100,10,10);
var tf:TextFormat=new TextFormat;
tf.size=25;
tf.color=0xffffff;
tf.font="Verdana";
var t:TextField=new TextField;
t.text="Button";
t.setTextFormat(tf);
button.addChild(t);
t.x=55;
t.y=27;
}
private function onResize():void
{
button.x=(stage.stageWidth-button.width) >> 1;
button.y=(stage.stageHeight-button.height) >> 1;
}
}
}