Fabric.js método easyInOutBack()

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 una animación de cómo progresar. 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 easyInOutBack() se usa para el efecto de retroceder hacia adentro y hacia afuera del objeto en el que se usa.

Sintaxis:

easeInOutBack(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

<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">
    
   // The easeInOutBack() function
   function easeInOutBack (t, b, c, d) {
      if (s == undefined) s = 1.70158;
      if ((t /= d / 2) < 1) 
        return c / 2 * 
          (t * t * (((s *= (1.525)) + 1)
                    * t - s)) + b;
      return c / 2 * 
        ((t -= 2) * t * 
         (((s *= (1.525)) + 1) * t
                    + s) + 2) + b;
   }
  
   // Calling the easeInOutBack() function over
   // the specified parameter values
   console.log(
     fabric.util.ease.easeInOutBack(1, 2, 3, 4)
   ); 
</script>
</body>
</html>

Producción:

1.70095446875

Ejemplo 2:

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 the parameters with its values
   var t = 5;
   var b = 10;
   var c = 40;
   var d = 12;
  
   // Calling the easeInOutBack() function over
   // the specified parameter values
   console.log(
     fabric.util.ease.easeInOutBack(t, b, c, d)
   ); 
</script>
</body>
</html>

Producción:

15.567339120370374

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *