En juegos o animaciones, hay muchos objetos en movimiento que pueden moverlos del punto A al B de forma lineal, pero después de aplicar una función de aceleración o aceleración, puede hacer que se vea más natural. Una función de aceleración dice cómo se realiza la animación en progreso. De esta manera, un movimiento rectilíneo puede tomar una forma interesante.
Las funciones de aceleración especifican la tasa de cambio de un parámetro a lo largo del tiempo. Son cuyas ecuaciones hacen que algo se mueva lentamente al principio y se acelere o disminuya la velocidad cerca del final. El conjunto más común de ecuaciones de aceleración proviene del libro y la página web de Robert Penner.
El método easyInOutSine() se utiliza para la entrada y salida sinusoidal.
Sintaxis:
easeInOutSine(t, b, c, d)
Parámetros: Este método acepta cuatro parámetros como se mencionó anteriormente y se describe a continuación:
- t: este parámetro contiene el tiempo especificado cuando comenzará la animación. Por ejemplo, si el valor de t es 0, significa que la animación acaba de comenzar.
- b: Este parámetro mantiene la posición inicial especificada del objeto en el eje x. Por ejemplo, si el valor de b es 10, significa que la posición inicial de los objetos en la coordenada x es 10.
- c: este parámetro contiene el cambio de valor especificado para el objeto. Por ejemplo, si el valor de c es 30, significa que el objeto debe moverse 30 a la derecha, terminando en 40.
- d: este parámetro contiene la duración especificada de todo el proceso. Por ejemplo, si el valor de d es 2, significa que el objeto tiene 2 segundos para realizar este movimiento de 10 a 40.
Valor devuelto: este método devuelve la posición relajada del objeto, es decir, la posición del objeto en un momento específico.
Ejemplo 1:
HTML
<!DOCTYPE html> <html> <head> <!-- Adding the FabricJS library --> <script src= "https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.2/fabric.min.js"> </script> </head> <body> <script type="text/javascript"> // Initializing easeInOutSine() function function easeInOutSine(t, b, c, d) { return -c / 2 * (Math.cos( Math.PI * t / d) - 1) + b; } // Calling the easeInOutSine() function // over the specified parameter values console.log(fabric.util.ease .easeInOutSine(1, 2, 3, 4)); </script> </body> </html>
Producción:
2.4393398282201786
Ejemplo 2:
HTML
<!DOCTYPE html> <html> <head> <!-- Adding the FabricJS library --> <script src= "https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.2/fabric.min.js"> </script> </head> <body> <script type="text/javascript"> // Initializing easeInOutSine() function function easeInOutSine(t, b, c, d) { return -c / 2 * (Math.cos( Math.PI * t / d) - 1) + b; } // Initializing the parameters // with its values var t = 5; var b = 10; var c = 40; var d = 12; // Calling the easeInOutSine() function // over the specified parameter values console.log(fabric.util.ease .easeInOutSine(t, b, c, d)); </script> </body> </html>
Producción:
24.823619097949585
Publicación traducida automáticamente
Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA