使用bitmapData简单实现涂鸦中的橡皮功能(as3)
来源:互联网 发布:abutable算法 编辑:程序博客网 时间:2024/04/28 19:30
之前有网站转载过blog里一篇
使用bitmapData简单实现涂鸦中的橡皮功能
由于里边没介绍..其实代码是as2的..后来一些网站误传为as3的代码..
今天把之前的代码改成了as3的代码..重新发上来..有需要的朋友可以看看...
PS:直接另存了以前的源码..所以代码还是写帧里...
01.
//主容器
02.
var
main:Sprite =
new
Sprite();
03.
main.mouseEnabled =
false
;
04.
addChild(main)
05.
//临时容器(所有操作都将先画在临时容器里,再进行"画"或"擦")
06.
var
mc:Sprite =
new
Sprite()
07.
main.addChild(mc)
08.
//保存最终画出来的内容的bitmapdata
09.
var
content:BitmapData =
new
BitmapData(
550
,
400
,
true
,
0x00FFFFFF
);
10.
//把content显示出来
11.
var
show:Bitmap =
new
Bitmap(content)
12.
main.addChildAt(show,
0
)
13.
14.
//默认选中画笔
15.
var
action:
Number
=
0
16.
txt.text =
"当前选中:画笔"
17.
18.
mc_move.addEventListener(MouseEvent.MOUSE_DOWN,startDraw)
19.
a.addEventListener(MouseEvent.CLICK,changeAction)
20.
b.addEventListener(MouseEvent.CLICK,changeAction)
21.
function
changeAction(e:MouseEvent):
void
22.
{
23.
if
(e.target.name ==
"a"
)
24.
{
25.
action =
0
26.
txt.text =
"当前选中:画笔"
27.
mc.visible =
true
28.
}
else
29.
{
30.
action =
1
31.
txt.text =
"当前选中:橡皮"
32.
mc.visible =
false
33.
}
34.
}
35.
function
startDraw(e:MouseEvent):
void
36.
{
37.
mc.graphics.lineStyle(
20
,cp.selectedColor);
38.
mc.graphics.moveTo(mouseX,mouseY);
39.
mc_move.addEventListener(MouseEvent.MOUSE_MOVE,drawing);
40.
stage.addEventListener(MouseEvent.MOUSE_UP,stopDraw);
41.
}
42.
function
stopDraw(e:MouseEvent):
void
43.
{
44.
if
(action!=
1
)content.draw(mc,
new
Matrix(),
new
ColorTransform(),BlendMode.NORMAL,
new
Rectangle(
0
,
0
,
550
,
400
))
45.
mc.graphics.clear()
46.
mc_move.removeEventListener(MouseEvent.MOUSE_MOVE,drawing);
47.
stage.removeEventListener(MouseEvent.MOUSE_UP,stopDraw);
48.
}
49.
function
drawing(e:MouseEvent):
void
50.
{
51.
mc.graphics.lineTo(mouseX,mouseY)
52.
if
(action==
1
)content.draw(mc,
new
Matrix(),
new
ColorTransform(),BlendMode.ERASE)
53.
e.updateAfterEvent()
54.
}
//原贴地址
http://blog.l4cd.net/post-old-67.html
- 使用bitmapData简单实现涂鸦中的橡皮功能(as3)
- 使用bitmapData简单实现涂鸦中的橡皮功能[Flex]
- 简单的实现涂鸦功能
- 简单的实现涂鸦功能
- [AS3]BitmapBytes类-实现BitmapData与ByteArray(Base64)之间互转功能
- As3.0中的位图(Bitmap/BitmapData)编程
- As3.0中的位图(Bitmap/BitmapData)编程
- As3.0中的位图(Bitmap/BitmapData)编程
- As3.0中的位图(Bitmap/BitmapData)编程
- view实现涂鸦功能
- Android实现涂鸦功能
- canvas实现涂鸦功能
- 简单BitmapData粒子的实现
- as3.0实现小涂鸦效果
- UE4快速实现涂鸦功能
- AS3 Bitmapdata brush!
- as3 formatName 功能实现
- 使用BitmapData实现图像的高速处理
- 使用WiX制作简单MSI安装程序
- Json.NET 3.0
- asp.net mvc cms项目Oxite
- Pushing Data to a Silverlight Client with a WCF Duplex Service
- 另一个强大的Visualizers :Mole For Visual Studio
- 使用bitmapData简单实现涂鸦中的橡皮功能(as3)
- 好用的WCF Visualizers
- WiX和DTF介绍
- linux mount windows 共享
- 利用SQL日志找回丢失的数据的免费工具SQL Log Rescue
- Web Deployment Projects for Visual Studio 2008
- Windows 环境变量管理器(小工具)
- RESTful WCF
- "大牛们,哪里跑",悬疑片之--《大牛影踪》