Comunidad de diseño web y desarrollo en internet online

Problema con easing

Citar            
MensajeEscrito el 10 Ene 2005 07:21 pm
Hola, estoy intentando hacer que un objeto llegue a un punto con easing y cuando llegue a ese punto vaya a otro punto tb con easing, pero no me sale. Por ejemplo, hago una bola que quiero q vaya al punto 400 del eje x:

Código :

onEnterFrame = function(){
bola._x += (400 - bola._x)/8
}


Y cuando llegue ahi, que vaya al punto 25 del eje x, pero no me hace nada, supongo que debo poner un "delete this.onEnterFrame", pero no consigo hacerlo.. algun consejo ?

Saludos :o

Por osulivan

52 de clabLevel



 

Diseño web madrid

msie
Citar            
MensajeEscrito el 10 Ene 2005 07:23 pm
ponle una condicional para ver si ya llegó, si es así, puedes declarar onEnterFrame para moverla al segundo punto

saludos

Por fael

BOFH

2443 de clabLevel

3 tutoriales
2 articulos

 

firefox
Citar            
MensajeEscrito el 10 Ene 2005 07:33 pm
Hola, pongo esto pero no me hace nada Fael, es lo que me dijiste no ?

Código :

this.onEnterFrame = function() {
   bola._x += (400-bola._x)/8;
   if (bola._x>=400) {
      onEnterFrame = function () {
         bola._x += (50-bola._x)/8;
      };
   }
};

Por osulivan

52 de clabLevel



 

Diseño web madrid

msie
Citar            
MensajeEscrito el 10 Ene 2005 07:49 pm
Joder q curioso, ya me salio, pero alguien me sabria decir por que si en el condicional le digo que si es mayor o igual q 400 no funciona, y sin embargo si le digo q si es mayor o igual q 399 si funciona..

Código :

this.onEnterFrame = function() {
   bola._x += (400-bola._x)/8;
   if (bola._x>=399) {
      onEnterFrame = function () {
         bola._x += (50-bola._x)/8;
      };
   }
};

Por osulivan

52 de clabLevel



 

Diseño web madrid

msie
Citar            
MensajeEscrito el 10 Ene 2005 11:12 pm
yo que tú cambiaría esta línea
if (bola._x>=399) {

por

if(Math.round(bola._x)==400)

Por fael

BOFH

2443 de clabLevel

3 tutoriales
2 articulos

 

firefox
Citar            
MensajeEscrito el 11 Ene 2005 12:46 am
Recuerda que nunca llegará a 400 realmente porqué estas dividiendolo, no llegará nunca. Por eso se da el problema

Salu2, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 11 Ene 2005 01:31 am
Ah! ya entiendo, vale muchas gracias a los 2, asi da gusto ! :lol:

Por osulivan

52 de clabLevel



 

Diseño web madrid

msie
Citar            
MensajeEscrito el 11 Ene 2005 03:32 am
de hecho, hernán, depende del número que lo está dividiendo

a = 0;
this.onEnterFrame = function(){
trace(a+=(200-a)/3)
}

y con unas cuantas pruebas cambiando el número que lo divide, se demuestra que en efecto sí llega, sólo que /8 va a tardar mucho más que /3

hagan la prueba y chequen

osulivan, felicidades, ahora casi todo mundo quiere el código ya hecho y tú entendiste mi respuesta y forjaste un código, con algunos detallitos pero pues para eso estamos. sigue iwal

saludos

Por fael

BOFH

2443 de clabLevel

3 tutoriales
2 articulos

 

firefox
Citar            
MensajeEscrito el 11 Ene 2005 03:43 am
Nop nunca llega


Código:

Código :

mc.onEnterFrame = function() {
   this._x += (100-this._x)/3;
   trace(this._x)
};


Resultado del trace:

Código :

59.3
72.85
81.9
87.9
91.9
94.6
96.4
97.6
98.4
98.9
99.25
99.5
99.65
99.75
99.8
99.85
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9
99.9




Es muy díficil que llegue, porqué estas haciendo la resta a un número que se calcula a cada posición nueva. Y claro, nunca llega por la resta en sí. Sino intenta que llegue a 100!

Salu2, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

firefox
Citar            
MensajeEscrito el 11 Ene 2005 09:07 am
Has probado hacerlo mejor con mx.transitions?

Aqui en la web hay un tutorial que habla sobre ello, miratelo a ver si te va bien.

Saludos!! ^^

Por Elecash

Claber

8126 de clabLevel

37 tutoriales
19 articulos
13 ejemplos

  Bastard Operators From Hell Desarrollador de GAIA Premio_Secretos Héroes

BarnaCity

firefox
Citar            
MensajeEscrito el 11 Ene 2005 10:23 am
Hmm, que buena pinta tiene y no parece muy dificil, gracias Elecash, no lo habia visto... El tema de este post era tener la idea para conseguir hacer un ejercicio que un usuario deseaba hacer e intente hacerlo con lo poco que se... voy a paracticar con el tutorial a ver q tal...

Saludos!

Por osulivan

52 de clabLevel



 

Diseño web madrid

msie

 

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