| /*----------------http://www.taoshaw.com------------------*/ Stage.scaleMode = 'noScale'; var tool; var toolsize = 40; var tooloffset = toolsize/2; var basepoint = new flash.geom.Point(0, 0); var basematrix = new flash.geom.Matrix(); var smudgecolor = new flash.geom.ColorTransform(); smudgecolor.alphaMultiplier = .7; var origbmp = flash.display.BitmapData.loadBitmap("dragon_bmp"); var drawbmp = new flash.display.BitmapData(origbmp.width, origbmp.height, true, 0); drawbmp.draw(origbmp); var smudgebmp = new flash.display.BitmapData(toolsize, toolsize, true, 0); var smudgeimgbmp = smudgebmp.clone(); var redrawbmp = smudgebmp.clone(); this.createEmptyMovieClip("image_mc", 1); //设置默认Matrix对象的位置 image_mc._x = 14; image_mc._y = 14; image_mc.attachBitmap(drawbmp, 1); smudge_btn.onPress = function() { this.gotoAndStop(2); redraw_btn.gotoAndStop(1); tool = "smudge"; }; redraw_btn.onPress = function() { this.gotoAndStop(2); smudge_btn.gotoAndStop(1); tool = "redraw"; }; circle_btn.onPress = function() { this.gotoAndStop(2); line_btn.gotoAndStop(1); setToolShape(circle_mc); }; circle_btn2.onPress = function() { this.gotoAndStop(2); line_btn2.gotoAndStop(1); setToolShape(circle_mc2); }; line_btn.onPress = function() { this.gotoAndStop(2); circle_btn.gotoAndStop(1); setToolShape(line_mc); }; line_btn2.onPress = function() { this.gotoAndStop(2); circle_btn2.gotoAndStop(1); setToolShape(line_mc2); }; function setToolShape(shape_mc) { smudgebmp.fillRect(smudgebmp.rectangle, 0); smudgebmp.draw(shape_mc, basematrix, smudgecolor); redrawbmp.fillRect(redrawbmp.rectangle, 0); redrawbmp.draw(shape_mc); } image_mc.onPress = function() { if (tool == "smudge") { this.onMouseMove = usesmudgeMouseMove; } else if (tool == "redraw") { this.onMouseMove = useRedrawMouseMove; } this.onMouseMove(true); }; image_mc.onRelease = image_mc.onReleaseOutside=function () { delete this.onMouseMove; }; function usesmudgeMouseMove(ignoreimage) { var offset = new flash.geom.Point(image_mc._xmouse-tooloffset, image_mc._ymouse-tooloffset); var drawRect = new flash.geom.Rectangle(offset.x, offset.y, toolsize, toolsize); if (!ignoreimage) { drawbmp.copyPixels(smudgeimgbmp, smudgeimgbmp.rectangle, offset, smudgebmp, basepoint, true); } smudgeimgbmp.copyPixels(drawbmp, drawRect, basepoint); updateAfterEvent(); } function useRedrawMouseMove() { var offset = new flash.geom.Point(image_mc._xmouse-tooloffset, image_mc._ymouse-tooloffset); var drawRect = new flash.geom.Rectangle(offset.x, offset.y, toolsize, toolsize); drawbmp.copyPixels(origbmp, drawRect, offset, redrawbmp, basepoint, true); updateAfterEvent(); } smudge_btn.onPress(); circle_btn.onPress(); /*----------------http://www.taoshaw.com------------------*/ |
点此下载源文件>>>
admin#flashas.net (#为@) 联系QQ:
:40777822
浙ICP备06033001号