Comunidad de diseño web y desarrollo en internet online

Ayuda en flash, objetos que se mueven a la vez que el raton

Citar            
MensajeEscrito el 30 Jul 2008 10:37 am
Hola, antes de nada agradecer la ayuda que ofreceis a los novatillos del flash.

He estado buscando tutoriales para que objetos del flash para encontrar el tipo de accionq ue busco pero lo más parecido que he encontrado es que los aonbjetos siguen al raton por toda la pantalla mientras éste se mueve.

Lo que yo quiero es que por ejemplo 5 objetos (que representan 5 secciones de un menu) se muevan levemente siguiendo el movimiento del raton. Algo parecido al arrastre de un iman pero en este caso se parecería al movimiento de 5 girasoles (objetos) que se mueven en torno al movimiento del sol (raton) incluido el tallo que permanecería anclado al suelo.


Creo que me he enrollado y no me he explicado bien. por lo tanto voy a intentar explicarlo con imagen:


[img=http://img411.imageshack.us/img411/7093/ejemplodk7.th.jpg]

Por TribalFun

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2008 11:32 am
Tu problema se resuelve con trigonometría, lo que se forma entre el mouse y el objeto en la pantalla en un triángulo rectángulo donde un cateto es la distancia en las "x" otro cateto es la distancia en las "y" e la hipotenusa es la distancia entre el objeto y el mouse, conociendo esto se puede saber el ángulo comprendido entre los dos objetos.

Supongamos que en el escenario tienes una línea vertical llamada "linea" con su centro en el extremo inferior (algo así como el tallo de tus girasoles), una solución sería esta:

Código :

linea.onEnterFrame = function():Void{
   
   var difX:Number = _root._xmouse - this._x;
   var difY:Number = _root._ymouse - this._y;
   
   var radian:Number = Math.atan2(difX, difY);
   var angulo:Number = (radian / Math.PI) * 180;
   
   this._rotation = 180 - angulo;
   
}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 30 Jul 2008 12:31 pm
Hola gracias por la respuesta. Estoy intentando aplicarlo, pero he de reconozer que so un torpe de cojones.

Independientemente de que me meta en camisas de 11 varas, estoy tratando de introducir este codigo a un objeto (pelicula) llamada "linea" en el que hay una linea con el eje dde giro en el vertice inferior.

Pero no pasa nada de nada. Agradecería un ejemplo para tontos. Ojo, no estoy pidiendo que me escribais literalemnte el codigo que tengo que utilizar, pero si un ejemplo que sea facil de entender.

gracias por todo de nuevo

Por TribalFun

5 de clabLevel



 

firefox
Citar            
MensajeEscrito el 30 Jul 2008 09:35 pm
No puedes poner el código encima del mc "linea", sino en el frame donde se encuentra este mc llamado "linea".

En el ejemplo que te he puesto he hecho lo que quieres, he escrito literalmente el código que debes utilizar.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 11 Ene 2009 04:20 pm
Hola!!! Siento meterme por aquí, pero es que estaba búscando soluciones a mis problemas y he dado justo con este post donde se pregunta exactamente lo que yo quería hacer.

Pero yo si que estoy bastante pez en esto de flash, y las matemáticas las tengo bastante olvidadas. He intentado comprender este código pero no termino de verlo claro. Podría alguien narrarmelo, por asi decirlo. Es decir, exponerlo pero en palabras, se lo agradecería muchísimo la verdad. Me gusta saber lo que hago y aprender, que para eso estamos, jejje:P

un saludo muy grande y gracias por adelantado! :P

Por ALEGNA_21

19 de clabLevel



 

safari
Citar            
MensajeEscrito el 11 Ene 2009 04:56 pm
ah! por cierto. Lo he probado y nada, que no me va.

He creado un mc linea, lo he arrastrado al escenario y he puesto el codigo en el ft1 de la linea de tiempo y nada.

Al crear el mc he puesto que su punto de registro este debajo en el centro y luego que su eje este en la parte inferior. No se a qué os referis con lo de centro pero supongo que será alguna de estas dos cosas no?

por favor, ayudarme!

UN SALUDO

Por ALEGNA_21

19 de clabLevel



 

safari
Citar            
MensajeEscrito el 11 Ene 2009 07:30 pm

ALEGNA_21 escribió:

He creado un mc linea, lo he arrastrado al escenario y he puesto el codigo en el ft1 de la linea de tiempo y nada. [...]
Solamente te falto agregarle "linea" de nombre de instancia a tu MC.
:wink:

Por M@U

BOFH

6210 de clabLevel

34 tutoriales
5 articulos

Genero:Masculino   Héroes Bastard Operators From Hell Editores

Bate jubilado de Cristalab

firefox
Citar            
MensajeEscrito el 11 Ene 2009 07:59 pm
jejej, gracias ya me di cuenta. Que horror!! :P

un saludo!

Por ALEGNA_21

19 de clabLevel



 

safari
Citar            
MensajeEscrito el 11 Ene 2009 08:00 pm
Okey! Me alegra que lo hayas solucionado.
:wink:

Saludos!

Por M@U

BOFH

6210 de clabLevel

34 tutoriales
5 articulos

Genero:Masculino   Héroes Bastard Operators From Hell Editores

Bate jubilado de Cristalab

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.