Home » H E R R A M I E N T A S
Home » Flash


Nuevo tema Responder al tema  [ 7 mensajes ] 
Autor Mensaje
NotaPublicado: Vie Abr 15, 2005 11:30 pm 
Desconectado
Administrador
Avatar de Usuario

Registrado: Sab Dic 18, 2004 8:39 pm
Mensajes: 1284
Ubicación: Montevideo
Gente, le dejo un script muy usado, se trata de los elementos que rotan según la posición del ratón, en este caso dos ojos.

Ejemplo: http://www.abcdisegno.com/images/flash/ojo.swf

Citar:
//Registro permanente de la posición del ratón.

Código:
_root.onMouseMove = function(){

Citar:
//Distancia desde la posición x del clip hasta la posición x del ratón, esto equivale al cateto adyacente del tríangulo rectánculo.

Código:
catady1 = _root._xmouse - pupila._x;

Citar:
//Distancia desde la posición y del centro del clip hasta la posición y del ratón, esto equivale al cateto opuesto del tríangulo rectánculo.

Código:
catop1 = _root._ymouse - pupila._y;

Citar:
//si recordamos algo de trigonometría, Tangente(angulo) = Cateto opuesto / cateto adyacente por tanto si despejamos angulo nos queda angulo = Cotangente (Cateto opuesto / cateto adyacente)
//traducido a AS Math.atan2 es el valor de Cotangente de el cateto opuesto sobre el adyacente

Código:
angulorad1 = Math.atan2(catop1,catady1);

Citar:
//Por medio de esta ecuación combierto el angulo en radianes a grados, porque la propiedad rotation trabaja con grados.

Código:
angulo1 = angulorad1*(180/Math.PI);

Citar:
//Aplico la rotación a al ojo

Código:
pupila._rotation = angulo1;

Citar:
//lo mismo para el otro ojo

Código:
catady2 = _root._xmouse - pupila2._x;
   catop2 = _root._ymouse - pupila2._y;
   angulorad2 = Math.atan2(catop2,catady2);
   angulo2 = angulorad2*(180/Math.PI);
   pupila2._rotation = angulo2;
};



FLA: http://www.abcdisegno.com/images/flash/ojo.rar

Podemos ver ejemplos de desarrollos interesantes utilizando la misma lógica, por ej:

http://crew9.net/flash.html

Bueno estimados, espero que pueda servir de ayuda para encarar algún script


Abrazo

_________________
Portafolio de trabajos
ABCwin · Despliega imágenes, videos y contenido en ventanas emergentes


Arriba
 Perfil Enviar mensaje privado Email  
 
 Asunto: Otra opción
NotaPublicado: Jue Abr 21, 2005 10:51 pm 
Desconectado
Administrador
Avatar de Usuario

Registrado: Sab Dic 18, 2004 8:39 pm
Mensajes: 1284
Ubicación: Montevideo
Algunos compañeros me han comentado del desvío de los ojos... es cierto, acá le dejo un ejemplo con el movimiento de los ojos más real. La limitación que tiene es que cuando pasamos el ratón por el centro de los ojos, el muchacho no se pone visco como debería.

http://www.abcdisegno.com/images/flash/ojo-2.swf

El único cambio que hay que hacer es que los ojos roten en torno a un mismo ángulo.

Saludos

_________________
Portafolio de trabajos
ABCwin · Despliega imágenes, videos y contenido en ventanas emergentes


Arriba
 Perfil Enviar mensaje privado Email  
 
 Asunto:
NotaPublicado: Sab Ago 15, 2009 1:17 am 
Desconectado

Registrado: Sab Ago 15, 2009 1:14 am
Mensajes: 1
lo q no entiendo es por q si yo hago exactamente todo los ojos giran con un eje central y no se desplazan por el espacio q permite ver un movimiento de ojos normal no entiendo por q


Arriba
 Perfil Enviar mensaje privado  
 
NotaPublicado: Jue Nov 26, 2009 1:35 pm 
Desconectado

Registrado: Jue Nov 26, 2009 1:29 pm
Mensajes: 1
Hola!
la verdad que me ha sido super util la explicación Y super clara!
Lo único que me ocurre es que tengo un problema con el que no sé si me podríais ayudar.

Resulta que el movimiento de ojos lo hace perfecto y lo guardo en un swf (ojos.swf, por ejemplo), pero a ese ojos.swf lo llamo desde otro swf distinto, entonces, se me carga bien y todo perfecto, solo que los ojos han cogido la posicion x,y del swf original, osea, del ojos.swf, y entonces, en los ojos giran en torno a una posicion xy que tenian inicialmente, pero que ya no se corresponde con la actual.

sabéis cómo puedo arreglarlo?
seria algo así como que fuese actualizando loa info de la posicion x,y, no?

muchas gracias por adelantado!!
patri


Arriba
 Perfil Enviar mensaje privado  
 
 Asunto:
NotaPublicado: Sab Nov 28, 2009 9:19 pm 
Desconectado
Avatar de Usuario

Registrado: Vie Feb 18, 2005 5:24 pm
Mensajes: 596
Ubicación: Estoy sentado en mi habitación, todo se nubla a mi alrededor...
buenas patri, no se como estas cargando la movie al swf base, pero la idea es bloquear las posiciones y relaciones de ruta en el swf externo cargado, esto seria:

targetmc._lockroot = true;

Si usas un loadMovie, deberias asegurarte que el _lockroot se aplique luego de cargar el clip.

Si usas MovieClipLoader, es más facil y al fializar la carga le decis algo asi:

evento_listener.onLoadCompleted = function (targetmc:MovieClip) {
targetmc._lockroot = true;
}

Espero te sirva de ayuda.

_________________
http://www.rgdesign.org/
_________________
"No entiendes realmente algo a menos que seas capaz de explicarselo a tu abuela." (Albert Einstein)


Arriba
 Perfil Enviar mensaje privado  
 
NotaPublicado: Vie Jul 05, 2013 1:26 pm 
Desconectado

Registrado: Dom Ene 09, 2005 11:05 pm
Mensajes: 41
Ubicación: Montevideo
Muy bueno :)

_________________
eltin

"Si pudiera decirlo con palabras, no iría todos los días cargado con mi cámara..."


Arriba
 Perfil Enviar mensaje privado  
 
NotaPublicado: Mié Oct 25, 2017 3:20 am 
Desconectado

Registrado: Vie Jul 21, 2017 5:37 pm
Mensajes: 4
Ok. Entonces no me arriesgo. Lo intentare con celo...

A ver si pronto te mando una para cambiarle el maquillaje, Prettio. Es la Alte, que no termina de convencerme, no se por que...


Arriba
 Perfil Enviar mensaje privado Email  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 7 mensajes ] 

Home » H E R R A M I E N T A S
Home » Flash

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado


No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Buscar:
Saltar a:  
cron