본문 바로가기

AS3/ActionScript

lineTo와 moveTo를 활용한 그림판 만들기

package {
 
 import flash.display.Sprite;
 import flash.events.MouseEvent;
 
 public class drawLine extends Sprite {
  private var _sprite:Sprite;
  
  public function drawLine() {
   _sprite = new Sprite();
   addChild(_sprite);
   _sprite.graphics.beginFill( 0xffffff );
   _sprite.graphics.drawRect( 0, 0, 400, 400 );
   _sprite.graphics.endFill();
   
   _sprite.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown2 );
   _sprite.addEventListener(MouseEvent.MOUSE_UP, onMouseUp2 );
  }
  
  private function onMouseDown2(event:MouseEvent):void
  {
   _sprite.graphics.lineStyle( 1, 0, 1 );
   _sprite.graphics.moveTo( mouseX, mouseY );
// 드로윙 커서라고 보면된다.
// (이걸 지우면 그림을 그리다가 다른곳을 클릭할경우 선이 길게 이어진다.)

 
  _sprite.addEventListener( MouseEvent.MOUSE_MOVE, onMouseMove2 );
  }
  
  private function onMouseUp2( event:MouseEvent):void
  {
   _sprite.removeEventListener( MouseEvent.MOUSE_MOVE, onMouseMove2 )
  }
  
  private function onMouseMove2( event:MouseEvent ):void
  {
   _sprite.graphics.lineTo( mouseX, mouseY );
  }
 }
}
  


lineTo와 moveTo를 활용한 그림판 만들기 .....

moveTo 클래스가 항상 마우스 x, y 좌표를 따라다니게 하고
마우스를 드래그하고 움직일때마다 lineTo클래스가 그림을 그린다.