Actionscript3.0, Flash

noviembre 2008

Como hacer una pizarra en Actionscript 3.0

Uno de los ejercicios típicos que se suelen hacer al comenzar a programar en Actionscript, es una pizarra.

En Actionscript 3.0 tenenmos que utilizar la clase Graphics. Podemos pintar dentro de cualquier objeto de visualización que tenga el atributo graphics (Shape, Sprite, MovieClip).

Lo primero que tenemos que hacer es definir el estilo de linea (color,grosor, etc) que vamos a utilizar en nuestro objeto. En este ejemplo vamos a dibujar en un Shape definido por la variable pizarra, por lo que podemos definir su estilo de linea asi:

Ahora tenemos el pincel en (0,0), con un grosor de 10 y color negro. Si queremos pintar una linea desde (100,100) hasta (200,200), tenemos que mover el pincel hasta (100,100). Para ello usamos la función moveTo(x,y);

Y ahora dibujamos la linea con lineTo:

Por último, si queremos borrar lo dibujado, utilizamos la función clear():

Hay que tener en cuenta que esta función borra además las definiciones de estilo de linea y relleno, por lo que antes de seguir dibujando debemos volver a hacerlas.

esedeerre says:

Yo también habría utilizado MOUSE_MOVE, pero supongo que la gente esta más “familiarizada” con eventos ENTERFRAME y esto les será mas fácil de entender.
Otra de las cosas que haría sería crear un nuevo Shape en cada MOUSE_DOWN y dibujar dentro de él.
Lo que no habia pensado era lo de pintar “sólo” trazos de una longitud n, que es muy fácil de implementar y seguro que ahorra rendimiento.

L says:

… que guapo es usted senor! :P k.L

David says:

PODRAIN CREAR UN VIDEO, EN LA CREACION DE LA PIZARRA ESTO DE TENER QUE ESTAR LEYENDO ES MUY COMPLICADO ESPECIALMENTE PARA LOS KE NUNCA HEMOS HECHO UNA :)

feresr says:

muy buenos tips.. para aclararnos a los que no tenemos una idea de como programar en AS3.0..

un par de cosas q no tengo claras (soy nuevo nuevo Xd)..

que es addChild?–

emilio says:

Hola esedeerre, muchas gracias por tus tutoriales son geniales!

En este tengo una pequeña duda; he creado la pizarra, le he puesto como nombre de instancia “pizarra”, y luego he copiado el codigo y lo he pegado en el primer frame, me dice que hay un error dice;

“1114: El atributo public sólo se puede utilizar dentro de un paquete. public class PizarraBasica extends Sprite{”

Si me puedes ayudar te lo agradecería.
Muchas gracias y un saludo.

emilio says:

hola esedeerre, perdona pero es que no me había leído los tutoriales en orden, y no sabía trabajar con clases. Ahora ya está todo claro.

Muchas gracias.
Espero que sigas subiendo más sobre AS3. Están muy bien.

Veronica says:

Hola, como harias para restringir el area del stage donde quieres dibujar?

ceaped says:

Buenas tardes
Como se hace un borrador?, osea que no se borre todo sino lo que uno desee.

Hay alguna forma de capturar el dibujo hecho y guardarse?, ya sea como un jpg

Gracias

Ruben Sandoval says:

Hola Vero, con la coordenada de mouseX,mouseY =D le pones un if por aquí un if por haya y listo…

s4design says:

Hola, alguien tiene idea de cómo se haría para guardar la imagen que se ha hecho en el servidor, sé como guardarla en tu pc pero no en el servidor.

Saludos!

Leticia says:

Hola! Leí el comentario de Verónica y tengo la misma duda. En tu respuesta a ella dice que se soluciona con unos if. Intento hacerlo y no me queda.
Como podría hacerlo??