[AS3]AS3.0开发绘图工具源代码示例
[AS3]AS3.0开发绘图板过程,一个绘图板,今天发今天做的部分,以后做新部分又更新。过程代码如下,详细过程偶就不写了,上班中……,不明白或者有改进的同学大家就跟帖吧
[AS3]AS3.0开发绘图板过程,一个绘图板,今天发今天做的部分,以后做新部分又更新。过程代码如下,详细过程偶就不写了,上班中……,不明白或者有改进的同学大家就跟帖吧
- //绘图
- package {
- import flash.display.*;
- import flash.events.*;
- import flash.utils.*;
- public class drawTest extends Sprite {
- //绘图层
- var drawStage:Sprite=new Sprite();
- //绘图缓存层
- var drawBuff:Sprite=new Sprite();
- //现在绘图的状态
- var isDraw:Boolean=false;
- //绘制直线的开始坐标
- var lineX:Number;
- var lineY:Number;
- //线条的粗细
- var lineSize:Number=1;
- //线条的颜色
- var lineColor:Number=0x000000;
- //缓存重绘定时器
- var buffTime:Timer=new Timer(50,0);
- public function drawTest () {
- //添加绘图层与缓存层,绘图层在下,缓存层在上
- addChild (drawStage);
- addChild (drawBuff);
- drawStage.graphics.beginFill (0x00ff99,0);
- drawStage.graphics.drawRect (0, 0, 800, 600);
- drawStage.graphics.endFill ();
- setChildIndex (drawStage,0);
- setChildIndex (drawBuff,1);
- //鼠标事件
- addEventListener (MouseEvent.MOUSE_DOWN ,stageMouseDownHandle);
- //在缓存里频率性的画图
- buffTime.addEventListener ("timer",buffDrawTimeHandle);
- buffTime.start ();
- }
- //CuPlayer.com鼠标按下
- private function stageMouseDownHandle (event:Event):void {
- if (!isDraw) {
- //取直线的起点
- lineX=mouseX;
- lineY=mouseY;
- isDraw=true;
- } else {
- //绘制一条直线在背景上
- drawStage.graphics.lineStyle (lineSize,lineColor);
- drawStage.graphics.moveTo (lineX,lineY);
- drawStage.graphics.lineTo (mouseX,mouseY);
- isDraw=false;
- }
- }
- //CuPlayer.com缓存重绘
- private function buffDrawTimeHandle (event:Event):void {
- drawBuff.graphics.clear ();
- if (isDraw) {
- //CuPlayer.com在缓存里画直线
- drawBuff.graphics.lineStyle (lineSize,lineColor);
- drawBuff.graphics.moveTo (lineX,lineY);
- drawBuff.graphics.lineTo (mouseX,mouseY);
- }
- }
- }
- }
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例
请稍候...