Functions
Functions
Graphics » HAL GFX » GFX EASING
Collaboration diagram for Functions:

## Functions
float | hal_gfx_ez_linear (float p)
| Linear easing, no acceleration. More...
float | hal_gfx_ez_quad_in (float p)
| Quadratic easing in, accelerate from zero. More...
float | hal_gfx_ez_quad_out (float p)
| Quadratic easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_quad_in_out (float p)
| Quadratic easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_cub_in (float p)
| Cubic easing in, accelerate from zero. More...
float | hal_gfx_ez_cub_out (float p)
| Cubic easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_cub_in_out (float p)
| Cubic easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_quar_in (float p)
| Quartic easing in, accelerate from zero. More...
float | hal_gfx_ez_quar_out (float p)
| Quartic easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_quar_in_out (float p)
| Quartic easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_quin_in (float p)
| Quintic easing in, accelerate from zero. More...
float | hal_gfx_ez_quin_out (float p)
| Quintic easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_quin_in_out (float p)
| Quintic easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_sin_in (float p)
| Sinusoidal easing in, accelerate from zero. More...
float | hal_gfx_ez_sin_out (float p)
| Sinusoidal easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_sin_in_out (float p)
| Sinusoidal easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_circ_in (float p)
| Circular easing in, accelerate from zero. More...
float | hal_gfx_ez_circ_out (float p)
| Circular easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_circ_in_out (float p)
| Circular easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_exp_in (float p)
| Exponential easing in, accelerate from zero. More...
float | hal_gfx_ez_exp_out (float p)
| Exponential easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_exp_in_out (float p)
| Exponential easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_elast_in (float p)
| Elastic easing in, accelerate from zero. More...
float | hal_gfx_ez_elast_out (float p)
| Elastic easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_elast_in_out (float p)
| Elastic easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_back_in (float p)
| Overshooting easing in, accelerate from zero. More...
float | hal_gfx_ez_back_out (float p)
| Overshooting easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_back_in_out (float p)
| Overshooting easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez_bounce_out (float p)
| Bouncing easing in, accelerate from zero. More...
float | hal_gfx_ez_bounce_in (float p)
| Bouncing easing out, decelerate to zero velocity. More...
float | hal_gfx_ez_bounce_in_out (float p)
| Bouncing easing in and out, accelerate to halfway, then decelerate. More...
float | hal_gfx_ez (float A, float B, float steps, float cur_step, float(*ez_func)(float p))
| Convenience function to perform easing between two values given number of steps, current step and easing function. More...

## Detailed Description

## Function Documentation

## ◆ hal_gfx_ez()

float hal_gfx_ez | ( | float | A,
|  | float | B,
|  | float | steps,
|  | float | cur_step,
|  | float(*)(float p) | ez_func
| ) |  |

Convenience function to perform easing between two values given number of steps, current step and easing function.

Parameters

  [in] | A | Initial value within range [0, 1]
  [in] | B | Finale value within range [0, 1]
  [in] | steps | Total number of steps
  [in] | cur_step | Current Step
  [in] | ez_func | pointer to the desired easing function

Returns
  Eased value

## ◆ hal_gfx_ez_back_in()

float hal_gfx_ez_back_in | ( | float | p | ) |

Overshooting easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_back_in_out()

float hal_gfx_ez_back_in_out | ( | float | p | ) |

Overshooting easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_back_out()

float hal_gfx_ez_back_out | ( | float | p | ) |

Overshooting easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_bounce_in()

float hal_gfx_ez_bounce_in | ( | float | p | ) |

Bouncing easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_bounce_in_out()

float hal_gfx_ez_bounce_in_out | ( | float | p | ) |

Bouncing easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_bounce_out()

float hal_gfx_ez_bounce_out | ( | float | p | ) |

Bouncing easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_circ_in()

float hal_gfx_ez_circ_in | ( | float | p | ) |

Circular easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_circ_in_out()

float hal_gfx_ez_circ_in_out | ( | float | p | ) |

Circular easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_circ_out()

float hal_gfx_ez_circ_out | ( | float | p | ) |

Circular easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_cub_in()

float hal_gfx_ez_cub_in | ( | float | p | ) |

Cubic easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_cub_in_out()

float hal_gfx_ez_cub_in_out | ( | float | p | ) |

Cubic easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_cub_out()

float hal_gfx_ez_cub_out | ( | float | p | ) |

Cubic easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_elast_in()

float hal_gfx_ez_elast_in | ( | float | p | ) |

Elastic easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_elast_in_out()

float hal_gfx_ez_elast_in_out | ( | float | p | ) |

Elastic easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_elast_out()

float hal_gfx_ez_elast_out | ( | float | p | ) |

Elastic easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_exp_in()

float hal_gfx_ez_exp_in | ( | float | p | ) |

Exponential easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_exp_in_out()

float hal_gfx_ez_exp_in_out | ( | float | p | ) |

Exponential easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_exp_out()

float hal_gfx_ez_exp_out | ( | float | p | ) |

Exponential easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_linear()

float hal_gfx_ez_linear | ( | float | p | ) |

Linear easing, no acceleration.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quad_in()

float hal_gfx_ez_quad_in | ( | float | p | ) |

Quadratic easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quad_in_out()

float hal_gfx_ez_quad_in_out | ( | float | p | ) |

Quadratic easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quad_out()

float hal_gfx_ez_quad_out | ( | float | p | ) |

Quadratic easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quar_in()

float hal_gfx_ez_quar_in | ( | float | p | ) |

Quartic easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quar_in_out()

float hal_gfx_ez_quar_in_out | ( | float | p | ) |

Quartic easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quar_out()

float hal_gfx_ez_quar_out | ( | float | p | ) |

Quartic easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quin_in()

float hal_gfx_ez_quin_in | ( | float | p | ) |

Quintic easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quin_in_out()

float hal_gfx_ez_quin_in_out | ( | float | p | ) |

Quintic easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_quin_out()

float hal_gfx_ez_quin_out | ( | float | p | ) |

Quintic easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_sin_in()

float hal_gfx_ez_sin_in | ( | float | p | ) |

Sinusoidal easing in, accelerate from zero.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_sin_in_out()

float hal_gfx_ez_sin_in_out | ( | float | p | ) |

Sinusoidal easing in and out, accelerate to halfway, then decelerate.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value

## ◆ hal_gfx_ez_sin_out()

float hal_gfx_ez_sin_out | ( | float | p | ) |

Sinusoidal easing out, decelerate to zero velocity.

Parameters

  [in] | p | Input value, typically within the [0, 1] range

Returns
  Eased value