Comunidad de diseño web y desarrollo en internet online

Rotación de un círculo en función de la posición del ratón

Citar            
MensajeEscrito el 01 Jun 2006 05:32 pm
Hola buenas:

Tengo un problema que no soy capaz de resolver. Tengo en un escenario 7 bolas con degradado (blanco + cualquier otro color) con el color blanco en un extremo como en el logo de Cristalab.

Lo que quiero hacer es que la rotación de dichas bolas cambie en función de la posición del ratón con lo que:
- el blanco de las bolas siempre apunta hacia el cursor como si éste fuera el punto de luz.
- el blanco de las bolas por defecto siempre está en 0º grados (parte derecha del círculo).

Yo he intentado una forma cutre pero no es muy precisa y no queda muy bien que digamos. Me temo que para resolverlo haya que usar funciones matemáticas y con las mates soy un cero a la izquierda.

¿Alguien sabría cómo hacerlo?
Gracias :)

Por askaulos

8 de clabLevel



 

firefox
Citar            
MensajeEscrito el 01 Jun 2006 10:52 pm
Hola.
Has de utilizar una formula trigonométrica básica:
tangente del angulo = cateto opuesto / cateto adyacente

Pasado a flash sería esto:

Código :

onEnterFrame = function () {
   xx = _xmouse-bola._x;
   yy = _ymouse-bola._y;
   angulo = Math.atan(yy/xx);
   angulo2 = angulo*180/Math.PI;
   if (xx>=0) {
      bola._rotation = angulo2;
   } else {
      bola._rotation = angulo2+180;
   }
};


El punto e luz de la bola lo tendrias que poner en el punto medio a la derecha...
ciao

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 04 Jun 2006 06:19 am
Gracias, lo he probado y funciona perfectamente.

Un saludo :wink:

Por askaulos

8 de clabLevel



 

firefox

 

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