Este es un sistema muy sencillo para redibujar un trazado de manera que parezca que se está dibujando al tiempo que se escribe. Cómo una animación de un lápiz escribiendo una curva en el papel. Este sería el efecto:
El primer paso será crear el trazado completo que queremos dibujar: Luego utilizaremos este trazado como guía para un MovieClip, utilizando como punto inicial y final de la interpolación el punto inicial y final del trazado: Ahora mediante código haremos que este MovieClip mientras se desplaza por la guía vaya redibujando el trazado. Para eso crearemos una clase:
Código :
class redibujaGuia
{
}
En el constructor de la clase pasaremos como parámetros la ruta de la instancia de clase y el MovieClip que utilizaremos
Código :
public function redibujaGuia(qRuta:MovieClip, qGlider:MovieClip)
{
ruta = qRuta;
glider = qGlider;
//glider._visible = false;
var num:Number = ruta.getNextHighestDepth();
linea = ruta.createEmptyMovieClip("line"+num, num);
linea.lineStyle(1, 0x000000, 100);
}
Tambien creamos un MovieClip vacio donde dibujaremos el trazado, y creamos un lineStyle por defecto.
Crearemos tambien una función para poder editar el estilo del trazado:
Código :
public function lineStyle(qGrosor:Number, qColor:Number, qAlfa:Number):Void
{
grosor = qGrosor;
color = qColor;
alfa = qAlfa;
linea.lineStyle(grosor, color, alfa);
linea.moveTo(glider._x, glider._y);
}
Por ultimo crearemos una función que genere un onEnterFrame que dibuje una línea cada vez que el MovieClip se mueva sobre la guía:
import mx.utils.Delegate;
//---------------------------------
class redibujaGuia
{
private var grosor:Number;
private var color:Number;
private var alfa:Number;
private var ruta:MovieClip;
private var glider:MovieClip;
private var linea:MovieClip;
private var act:Object;
private var prev:Object;
//---------------------------------
public function redibujaGuia(qRuta:MovieClip, qGlider:MovieClip)
{
ruta = qRuta;
glider = qGlider;
//glider._visible = false;
var num:Number = ruta.getNextHighestDepth();
linea = ruta.createEmptyMovieClip("line"+num, num);
linea.lineStyle(1, 0x000000, 100);
}
//---------------------------------
public function lineStyle(qGrosor:Number, qColor:Number, qAlfa:Number):Void
{
grosor = qGrosor;
color = qColor;
alfa = qAlfa;
linea.lineStyle(grosor, color, alfa);
linea.moveTo(glider._x, glider._y);
}
//---------------------------------
public function start():Void
{
glider.onEnterFrame = Delegate.create(this, onEnterFrame);
}
//---------------------------------
private function onEnterFrame():Void
{
act = {x:glider._x, y:glider._y};
linea.lineTo(act.x, act.y);
if (prev && act.x == prev.x && act.y == prev.y)
{
delete glider.onEnterFrame;
} else
{
prev = act;
}
}
//---------------------------------
}
Para utilizarla (a parte del proceso manual de dibujar la guía y colocar el MovieClip) utilizaremos este código en el fotograma donde empiece la interpolación:
Código :
import redibujaGuia;
var linea1:redibujaGuia = new redibujaGuia(this, glider1);
linea1.lineStyle(2, 0x000000, 100);
linea1.start();
Como novata que soy he intentado descargarme el fla para asi hacerlo paso a paso pero me sale un mensaje que dice formato de archivo inesperado tengo el flash MX me lo podrías mandar por correo, te estaria muy agradecida carmencvg@yahoo.es Por:carmen_blog
carmen_blog :
Como novata que soy he intentado descargarme el fla para asi hacerlo paso a paso pero me sale un mensaje que dice formato de archivo inesperado tengo el flash MX me lo podrías mandar por correo, te estaria muy agradecida carmencvg@yahoo.es
Me funciona correcto el tema de dibujar la línea, pero resulta que la misma no me sale suavizada, es decir que aunque en modo edición la vea bien, cuando publico la linea que se dibuja me sale con los bordes rectos, ¿alguna sugerencia?
PD. En el ejemplo descargado si la veo redondeada, tanto en edicion como cuando publico.
saludos y gracias Por:tengo un problemilla ..._
Wow excelente muchas gracias!! Por:trino_as
tengo un problemilla ..._ :
Me funciona correcto el tema de dibujar la línea, pero resulta que la misma no me sale suavizada, es decir que aunque en modo edición la vea bien, cuando publico la linea que se dibuja me sale con los bordes rectos, ¿alguna sugerencia?
PD. En el ejemplo descargado si la veo redondeada, tanto en edicion como cuando publico.
saludos y gracias
El problemas es que le estas dando pocos fotogramas a la animación.
La linea que dubujas solo sirve como guía para desplazar el movieclip por la pelicula. Y este movieclip es el que fotograma a fotograma va diujando lineas mientras avanza. El tema es que si colocas pocos fotogramas en la animación el paso de un fotograma a otro será grande y verás lineas rectas largas.
Lo que has de hacer es ponerle más fotogramas. Y si lo que quieres es hacer la animación más rápida subes la velocidad de fotogramas de la pelicula Por:Zguillez
Hay alguna manera de que tome el grosor de la linea hecha (tengo una tableta y me interesaria que la linea tenga distintos grosores) o hacerla cambiar de grosor de alguna manera? e intentado pero no me sale, desde ya muchas gracias Por:Federico_blog
para eso esta la function: public function lineStyle(qGrosor:Number, qColor:Number, qAlfa:Number):Void { grosor = qGrosor; color = qColor; alfa = qAlfa; linea.lineStyle(grosor, color, alfa); linea.moveTo(glider._x, glider._y); }
Gracias, tenias razón, era cosa de los fotogramas, ahora ya "pinta" como es debido. Por:cLydde_blog
fantástico,pero al bajarme el flash no veo la linea de trazo, es como si estuviera invisible, ¿porque será? Por:diegolo_blog
Sencillamente increible. Gracias por tu aportacion ya andaba harto de mascaras para hacer este efecto. Si tienes mas ideas soy todo oidos. Saludos. Por:fran_blog
Me parece más sencillo, aunque va a sonar más complicado, enmascarar la forma con un sprite (movieclip) que tenga a la misma forma con otra máscara que va creciendo. Parece complejo al escribirlo, pero son cuatro clic. No veo yo las ventajas de hacerlo de esta manera. Por:asalinasci_blog
de la fomra que propones no es facil el crear una curva que retorne hacia atrás y cruce su anterior trazo. (espirales) Por:DanielSemper
es cierto, no lo había pensado, tendrías que ir añadiendo más máscaras y sería un coñazo. Gracias. Por:asalinasci_blog
Hola. Me da un error y no me muestra el trazo, sólo el lápiz en movimiento.
**Error** Escena=Scene 1, capa=Layer 1, fotograma=1:Línea 2: No se pudo cargar la clase o interfaz 'redibujaGuia'. var linea1:redibujaGuia = new redibujaGuia(this, glider1);
Total de errores de ActionScript: 1 Errores comunicados: 1 Por:macmigue_blog
macmigue_blog :
Hola. Me da un error y no me muestra el trazo, sólo el lápiz en movimiento.
**Error** Escena=Scene 1, capa=Layer 1, fotograma=1:Línea 2: No se pudo cargar la clase o interfaz 'redibujaGuia'. var linea1:redibujaGuia = new redibujaGuia(this, glider1);
Total de errores de ActionScript: 1 Errores comunicados: 1
Eso es porque no carga bien la clase. Coloca el archivo .as junto a tu .fla Por:Zguillez
Hola! Muchas gracias por tu solución al problema de poder dibujar en tiempo real, Zguillez. Es genial!
Solamente tengo un problema. Si quiero dibujar varios trazos en diferentes fotogramas a lo largo de la película, en el momento de dibujar uno automáticamente el último creado desaparece. He intentado crear varias clases en el mismo archivo .as, pero veo que no se puede, así que no sé como solucionarlo ya que el tema de las clases justo ahora empiezo a utilizarlo. Por:Laura_blog
baya q es bueno hace tiempo q estaba buscando estoya q en las clases no tenian esta informacion a pesar de ser una institucion reconocida lo q me interesari seri aprender mas de action script de com fuciona cada codigo,tambien e bisto q se puede crear repruductores de mp3y eso no nos enseñaron es pmuy bueno cristallab x q ay pocos lugares q t dan inf -_- º_º Por:nuevo_blog
Quisiera cambiar el color de la línea trazada, para que en lugar de negra sea del color que yo quiera, pero no sé cómo hacerlo, no tengo mucha idea de actionscript. Cómo puedo decir qué color quiero? Por:silvana_blog
oye quisiera saber sobre animacion alfa y sobre animacion tinta enviamelo a mi correo tom_nha_89 aroba hotmail Por:aaron_blog
Que tal yo tambien tengo el mismo problema que macmigue, aunque ya guarde los dos archivos el fla y el .as juntos y aun no se ve la linea y me sigue mandando ese error, si me puedes ayudar te lo agradeceria Por:daresyscom_blog
gracias esto me ha servido demasiado para poder realizar mi tarea!!!! Por:Ana milena _blog
me pueden decir como puedo descargarrrrr jejejeje Por:patricia_blog
conseguiii.. super bueno Por:patricia_blog
patricia_blog :
me pueden decir como puedo descargarrrrr jejejeje
Me parece que el chiste es que lo hagas tu , viendo las instrucciones . Por:flashreloco
soy novato en esto... pero que muy novato...os explico tengo un grupo de hip-hop y quisiera hacer un video mas o menos como este:http://www.youtube.com/watch?v=IFVua4Y79ow
si os dais cuenta hay veces k los nombres de cada uno de los integrantes... sale con efecto de trazado... quisiera saber si eso se hace con este mismo metodo... es decir k en ves de crear tu mismo el trazado inicial pusieras la foto de tu nombre... o se hace con algun otro programa...por favor si alguien me puede ayudar... felipeyandres@msn.com les agradeceria de todo corazon! Por:felipe _blog
no entiendo esta parte (Tambien creamos un MovieClip vacio donde dibujaremos el trazado, y creamos un lineStyle por defecto.) Por:Lucas_blog
me tira estos errores si alguien me puede ayudar muchas gracias
**Error** Escena=Escena 1, capa=lapiz, fotograma=1:Línea 1: No se pudo cargar la clase o interfaz 'redibujaGuia'. import redibujaGuia;
**Error** Escena=Escena 1, capa=lapiz, fotograma=1:Línea 2: No se pudo cargar la clase o interfaz 'redibujaGuia'. var linea1:redibujaGuia = new redibujaGuia(this, glider1);
Total de errores de ActionScript: 2 Errores comunicados: 2 Por:Lucas_blog
Zguillez :
macmigue_blog :
Hola. Me da un error y no me muestra el trazo, sólo el lápiz en movimiento.
**Error** Escena=Scene 1, capa=Layer 1, fotograma=1:Línea 2: No se pudo cargar la clase o interfaz 'redibujaGuia'. var linea1:redibujaGuia = new redibujaGuia(this, glider1);
Total de errores de ActionScript: 1 Errores comunicados: 1
Eso es porque no carga bien la clase. Coloca el archivo .as junto a tu .fla
Ya habias leido esto Por:
lo hice antes y no pasa nada .......y si lo habia leido Por:Lucas_blog
Hola, muy interesante todo esto, y la verdad me gustaria aprender, les felicito por compartir, soy tan novata en todo esto..estoy tan ansiosa de aprender. Por:milka_blog
¿Alguien me puede ayudar? Aw Crap
Soy nueva en esto y no entiendo donde se tiene que poner el código... Creo entender que hay dos secciones de código; 1º que crea una clase y no se dónde se pone 2º en el fotograma donde empieza la interpolación dentro del clip ¿no?
Gracias por perder unos minutos conmigo Riendo Por:la nena wena_blog
por el dia de que yo le die a mi madre que nunca crei que el presidente de los estados unidos fuera un burro por que gasta mucho dinero en bombas para la gera en irak y matan a mucha gente siiiii...... Por:abran limcon_blog
abran limcon_blog :
por el dia de que yo le die a mi madre que nunca crei que el presidente de los estados unidos fuera un burro por que gasta mucho dinero en bombas para la gera en irak y matan a mucha gente siiiii......
mmm.. y como modifico el recorrido?? por que no lo ceo por ingun sitio!
Txs! Por:Gracienk_blog
muy buen, podrias publicar mas ejercicios Por:bee_blog
Como puedo conseguir el actionscript3? k tengo k bajarme el flex? Por:fousini_blog
Me ha sido muy util Muchas gracias
Un saludo luis Por:gracias_blog
Saludos.
Realmente estaba buscando esto, pero es un mensaje viejo y el código no me funciona bien (soy medio novato) por lo que traté de descargar el fl pero ya no está disponible. Entonces quería ver si por favor me lo pod+ian volver a subir a ver si me funciona y entiendo un poco más como se trabaja esto.
Muchas gracias. Por:Conic-blog
Hola amigos
trato de hacerlo pero no puedo
si alguien me puede pasr el .fla
para poder analizarlo para saber donde tengo el error se los agradezco
saludos erbus7@gmail.com
ok Por:erbus7-blog
hola amigos copie el codigo del trazo todo lo puse en la misma carpeta el fla y el as y al ejecutarlo no me muestra el trazado alguien sabe donde puedo bajarme el fla que pusieron o si alguien me lo puede enviar alejandroare@hotmail:com gracias Por:carlos-blog
ya logre hacerlo, lo que me faltaba era poner como glider1 al nombre de isntancia del clip de pelicula (el lapiz), como lo indica en el codigo del frame donde empieza la interpolacion
var linea1:redibujaGuia = new redibujaGuia(this, glider1);
quizas a alguien le falte lo mismo,ahora puedo modificar este codigo y hacer una linea que se deslize como una forma de gusanito,porque yo hacia este efecto con una mascara era efectivo salvo cuando el gusanito tenia quedar una vuelta en U, me ha servido mucho, gracias Por:carlos-blog
Ju, no me sale, alguien me puede ayudar?. No me puedo descargar el archivo, supongo que es que ha pasado mucho tiempo desde que escribieron esto Por:patritf-blog
Disculpen, podrian poner nuevamente el archivo .fla, gracias Por:isra_mx-blog
por fis si pudierna poner de nuevo el fla Por:emac-blog
Alguien puede pasarme el archivo .fla....
llevo dias intentando hacerlo y no hay manera....
no encuentra la ruta de la clase! Por:pepin-blog
actualicen por favor Por:kekoxxx
Sinceramente, soy nueva en esto y no comprendo,no se como seguir las instrucciones podria alguien explicarme?
gracias Por:keightt94-blog
Hola! disculpa, sera que puedas poner a disposicion el .fla de la aplicacion, ya que intente descargarlo pero me marca error del servidor.
muchisimas gracias
Buenas tardes! Por:lsc_tomni
Hola! me he intentado bajar los fuentes, pero marca un error. Podrias subirlo nuevamente.
Gracias Por:pixel-blog
He intentado realizar el ejercio paso a paso como lo publica Zguillez y siempre me marca errores, podria alguien subir nuevamente el archivo .fla
Muchas Gracias!! Por:Gskm-blog
Hola, llevo un par de dias intentando como realizar este .fla y algo me esta fallando..
ademas los links para la descarga de .fla no funcionan.
alguien podria mandarme el archivo?..
o decirme donde lo puedo bajar,
muchisimas gracias. Por:Pedro Pablo Arias-blog
hola parece ke esta buenazo nolo e aplicado todavia pero creo ke est buenazo lo aplicares Por:junior-blog
uhh, no me funciona la descarga y he intentado hacerlo yo misma pero no me funciona...quién podría dar el link de los archivos?
Gracias Por:anifutip-blog
Me gustaria saber si pueden hacer el trazo del lapiz animado sin la utilizacion de action script, poderlo explicar con fotogramas paso a paso y enviarme el archivo armado en flash para poder ver el procedimiento,
Gracias, mi correo arny_lopez@hotmail.com Por:Arnulfo Lopez-blog
Yo tampoco puedo descargarme el fla si alguien puede que me lo envie a guadalupe14@ozu.es.
Muchas gracais Por:Guada-blog
yo ni sabia hacer elefecto con mascaras siempre me mataba frame por frame pero nuca mas gracias Por:[Ray]
hola , necesito cambiar el grosor y el color de la linea.. como lo puedo hacer=? Gracias!! Por:magui-blog
como esta eso de los codigo Por:bob-blog
Alguien me puede ayudar enviandome el .fla lo necesito urgente, fabiapr@gmail.com Por:fabian-blog
hmmm sabes lo utilice en un boto y me va de lujo pero el problema es como hago para que despues de usarlo pueda borrarla de nuevo? ya que cuando por ejemplo abro una puerta hecha con este efceto la puerta se queda ahi Por:ivan-blog
a mi tambien me gustaria descargarme el .fla a ver si soy capaz de entenderlo...alguien puede actualizar link por favor??? es q asi me lio muchoooo Por:chicaverde-blog
alguién puede subir el ejemplo? ya no esta disponible Por:CAMILO-blog