Comunidad de diseño web y desarrollo en internet online

senos y cosenos

Citar            
MensajeEscrito el 05 Mar 2007 07:35 pm
queria hacer el movimiento de orbita de un objeto, por ejemplo de una bola
escribi el siguiente codigo

Código :

var x:Number = 0;
var amplitud:Number = 2;

onEnterFrame = function()
{
   bola._x = Math.sin(x)*amplitud+50;
   bola._y = Math.cos(x)*amplitud+50;
   
   x = x + 1;
}


el problema es que consigo una amplitud muy pequeña y si aumento la amplitud a, por ejemplo, 10, el movimiento es muy poco fluido

alguien tiene alguna sugerencia? gracias!

Por dani9del9

46 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Mar 2007 08:41 pm
Bien, dos coas a tener en cuenta:
  • Los ángulos siempre debes ponerlos en radiantes "pi"radiantes =180 grados = 3,14. U_U
    Es decir, si al incrementar "t" le sumas 1, le estas sumando casi una sexta parte de la circunferencia, por esto es por lo que no va "fluido".
  • Las distancias son en píxeles. Una amplitud de 2 píxeles... Ehem¬¬
Recomendaciones:
- Incrementa el angulo en un factor de 0,1 o 0,3; si le pones más igual no se ve bien.
- Pon una amplitud mas grande.
- Para aumentar la velocidad, también puedes usar: "Math.sin(3*x);"

SuerT

Nota: ¡¡No te olvides de que en flash, los decimales se separan con un punto ("."), no con una coma!!

Por Bleend

Claber

3385 de clabLevel

10 tutoriales
4 articulos

Genero:Masculino   Héroes

Barcelona

firefox
Citar            
MensajeEscrito el 05 Mar 2007 10:35 pm
q bueno, muxas gracias :)

Por dani9del9

46 de clabLevel



 

firefox

 

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