forked from: forked from: Paint
forked from forked from: Paint (diff: 21)
... @author tkinjo
ActionScript3 source code
/**
* Copyright tkinjo ( http://wonderfl.net/user/tkinjo )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/okOq
*/
// forked from tkinjo's forked from: Paint
// forked from tkinjo's Paint
package
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.Matrix;
[SWF(width="465", height="465", backgroundColor="0xffffff", frameRate="60")]
/**
* ...
* @author tkinjo
*/
public class Main extends Sprite
{
private var lineBitmapData:BitmapData;
public function Main()
{
// create lineBitmapData
var lineBitmapDataCanvas:Sprite = new Sprite();
lineBitmapDataCanvas.graphics.beginFill( 0x0 );
lineBitmapDataCanvas.graphics.drawCircle( 0, 0, 5 );
lineBitmapDataCanvas.graphics.endFill();
var lineBitmapMatrix:Matrix = new Matrix();
lineBitmapData = new BitmapData( 10, 10 );
lineBitmapMatrix.translate( 5, 5 );
lineBitmapData.draw( lineBitmapDataCanvas, lineBitmapMatrix );
// add eventListener
stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
}
private function mouseDownHandler( event:MouseEvent ):void {
graphics.lineStyle( 10 );
graphics.lineBitmapStyle( lineBitmapData );
graphics.moveTo( event.stageX, event.stageY );
}
private function mouseMoveHandler( event:MouseEvent ):void {
if ( !event.buttonDown )
return;
graphics.lineTo( event.stageX, event.stageY );
}
private function mouseUpHandler( event:MouseEvent ):void {
graphics.lineStyle();
}
}
}