Miren tengo este codigo que hice para una aplicacion de dibujo ... en este archivo tengo 10 figuras que puedo hacer el drag a un cuadro que tengo determinado para poder poner las imagenes, las puedo escalar, rotar, etc ...
tengo tambien 3 diferentes colores donde puedo dibujar y hasta ahorita todo esta bien.
pero quiero poder cambiar la forma de dibjar, quiero usar diferentes bronchas, digamos ahorita solo pinta lineas y quiero cambiar los patrones.
alguien podria echarme la mano con esto ??
saludos
Código :
Stage.scaleMode = "noscale"; Stage.showMenu = false fscommand("trapallkeys", "true"); fscommand("fullscreen", "true"); // variables dibujo var drawingEnabled:Boolean = true; var lineThickness:Number = 5; var lineColor:Number = 0x0EACBF; var lineAlpha:Number = 100; var seleccion:Boolean = false; var original:Boolean = false; //variables drag var elementos:Number = 0; var curr_elemento:Number = 0; var curr_mc:String = ""; //aplicacion de tamaño, girar, etc ... import gs.TransformManager; var manager_obj = new TransformManager({bounds:{xMin:241, xMax:1126, yMin:12, yMax:676}, constrainScale:true, autoDeselect:true, forceSelectionToFront:true, eventHandler:onAnyEvent}); manager_obj.addEventListener("move", onMove); function onAnyEvent(event_obj:Object):Void { seleccion = true; //trace("Action: "+event_obj.action+", MovieClip or TextField: "+event_obj.targetObject+", transformed?: "+event_obj.transformed); } function onMove(event_obj:Object):Void { //trace("Moved mc: "+event_obj.targetObject); } //aplicacion de drag de elementos MovieClip.prototype.aprieta = function(){ this.onPress = function(){ if(original == false){ disableDrawing(); elementos = elementos + 1 curr_elemento = elementos; _root.attachMovie(this._name, "d_e"+curr_elemento, _root.getNextHighestDepth(), {_x:this._x, _y:this._y}); curr_mc = this._name; startDrag("d_e"+curr_elemento); } } } for (i=0;i<10;i++){ this["d"+(i+1)].aprieta() } var mouseListener:Object = {}; mouseListener.onMouseUp = mouseMoveHandler; Mouse.addListener(mouseListener); function mouseMoveHandler():Void { trace("d_e"+curr_elemento) manager_obj.addItem(_root["d_e"+curr_elemento]); stopDrag(); } /// aplicacion de dibujo this.onEnterFrame = update; this.onMouseDown = startDrawing; this.onMouseUp = stopDrawing; function update():Void { var x:Number = mascara._xmouse; var y:Number = mascara._ymouse; var w:Number = mascara._width; var h:Number = mascara._height; if( x >= 0 && y >= 0 && x < w && y < h && seleccion == false) { // MOUSE IS OVER THE DRAWING AREAadentro enableDrawing(); }else{ // afuera disableDrawing(); } } function enableDrawing():Void { if( drawingEnabled == false ) { drawingEnabled = true; } } function disableDrawing():Void { if( drawingEnabled == true ){ //trace("desabilito") drawingEnabled = false; } } function startDrawing():Void { if( drawingEnabled ) { drawing_mc.lineStyle(lineThickness, lineColor, lineAlpha); drawing_mc.moveTo(_xmouse,_ymouse); onMouseMove = drawLine; } } function stopDrawing():Void { onMouseMove = NoLine; } function drawLine():Void { if( drawingEnabled ) { drawing_mc.lineTo(_xmouse,_ymouse); updateAfterEvent(); } } bt_azul.onPress = function(){ if (original ==false){ drawingEnabled = true; lineColor = 0x0EACBF; seleccion = false; } } bt_naranja.onPress = function(){ if (original == false){ drawingEnabled = true; lineColor = 0xF45C26; seleccion = false; } } bt_cafe.onPress = function(){ if (original == false){ drawingEnabled = true; lineColor = 0xC4BB84; seleccion = false; } } bt_original.onPress = function(){ original = true; seleccion = true; drawingEnabled = false; _root.attachMovie("foto_original", "foto_original", _root.getNextHighestDepth(), {_x:683.5, _y:344}); } bt_clear.onPress = function(){ drawingEnabled = true; seleccion = false; original = false; drawing_mc.clear(); for (i = 1; i<=elementos;i++){ removeMovieClip(_root["d_e"+i]) } elementos = 0; curr_elemento = 0; curr_mc = ""; } stop();[/flash]