·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]AS3.0开发绘图工具源代码示例

时间:2013-04-05 12:44CuPlayer.com
[AS3]AS3.0开发绘图板过程,一个绘图板,今天发今天做的部分,以后做新部分又更新。过程代码如下,详细过程偶就不写了,上班中……,不明白或者有改进的同学大家就跟帖吧

[AS3]AS3.0开发绘图板过程,一个绘图板,今天发今天做的部分,以后做新部分又更新。过程代码如下,详细过程偶就不写了,上班中……,不明白或者有改进的同学大家就跟帖吧

  1. //绘图 
  2. package { 
  3. import flash.display.*; 
  4. import flash.events.*; 
  5. import flash.utils.*; 
  6. public class drawTest extends Sprite { 
  7.    //绘图层 
  8.    var drawStage:Sprite=new Sprite(); 
  9.    //绘图缓存层 
  10.    var drawBuff:Sprite=new Sprite(); 
  11.    //现在绘图的状态 
  12.    var isDraw:Boolean=false
  13.    //绘制直线的开始坐标 
  14.    var lineX:Number; 
  15.    var lineY:Number; 
  16.    //线条的粗细 
  17.    var lineSize:Number=1
  18.    //线条的颜色 
  19.    var lineColor:Number=0x000000
  20.    //缓存重绘定时器 
  21.    var buffTime:Timer=new Timer(50,0); 
  22.  
  23.    public function drawTest () { 
  24. //添加绘图层与缓存层,绘图层在下,缓存层在上 
  25. addChild (drawStage); 
  26. addChild (drawBuff); 
  27. drawStage.graphics.beginFill (0x00ff99,0); 
  28. drawStage.graphics.drawRect (0, 0, 800, 600); 
  29. drawStage.graphics.endFill (); 
  30.  
  31. setChildIndex (drawStage,0); 
  32. setChildIndex (drawBuff,1); 
  33. //鼠标事件 
  34. addEventListener (MouseEvent.MOUSE_DOWN ,stageMouseDownHandle); 
  35. //在缓存里频率性的画图 
  36. buffTime.addEventListener ("timer",buffDrawTimeHandle); 
  37. buffTime.start (); 
  38.    } 
  39.    //CuPlayer.com鼠标按下 
  40.    private function stageMouseDownHandle (event:Event):void { 
  41. if (!isDraw) { 
  42. //取直线的起点 
  43. lineX=mouseX
  44. lineY=mouseY
  45. isDraw=true
  46. } else { 
  47. //绘制一条直线在背景上 
  48. drawStage.graphics.lineStyle (lineSize,lineColor); 
  49. drawStage.graphics.moveTo (lineX,lineY); 
  50. drawStage.graphics.lineTo (mouseX,mouseY); 
  51. isDraw=false
  52.    } 
  53.    //CuPlayer.com缓存重绘 
  54.    private function buffDrawTimeHandle (event:Event):void { 
  55. drawBuff.graphics.clear (); 
  56. if (isDraw) { 
  57. //CuPlayer.com在缓存里画直线 
  58. drawBuff.graphics.lineStyle (lineSize,lineColor); 
  59. drawBuff.graphics.moveTo (lineX,lineY); 
  60. drawBuff.graphics.lineTo (mouseX,mouseY); 
  61.    } 

 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器