
Go to the source code of this file.
Classes | |
| struct | SIO2ipocurve |
Enumerations | |
| enum | SIO2_IPO_CURVE_INTERPOLATION_TYPE { SIO2_IPO_CURVE_INTERPOLATION_CONSTANT = 0, SIO2_IPO_CURVE_INTERPOLATION_LINEAR, SIO2_IPO_CURVE_INTERPOLATION_BEZIER } |
| enum | SIO2_IPO_CURVE_EXTRAPOLATION_TYPE { SIO2_IPO_CURVE_EXTRAPOLATION_CONSTANT = 0, SIO2_IPO_CURVE_EXTRAPOLATION_EXTRAPOLATION, SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC, SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC_EXTRAPOLATION } |
Functions | |
| SIO2ipocurve * | sio2IpoCurveInit (void) |
| SIO2ipocurve * | sio2IpoCurveFree (SIO2ipocurve *) |
| float | sio2IpoCurveRender (SIO2ipocurve *, SIO2window *) |
| float | sio2IpoCurveReset (SIO2ipocurve *) |
| void | sio2IpoCurveGetRatio (SIO2ipocurve *) |
| SIO2_IPO_CURVE_EXTRAPOLATION_CONSTANT | Use a constant extrapolation when the SIO2ipocurve is looping. |
| SIO2_IPO_CURVE_EXTRAPOLATION_EXTRAPOLATION | Use regular extrapolation (linear) when the SIO2ipocurve is looping. |
| SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC | The curve will cycle (loop) when the last control point have been reached. |
| SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC_EXTRAPOLATION | Loop the curve and use regular extrapolation. |
| SIO2ipocurve* sio2IpoCurveFree | ( | SIO2ipocurve * | _SIO2ipocurve | ) |
Free an SIO2ipocurve.
return a NULL SIO2ipocurve structure pointer.
References SIO2ipocurve::point.
Referenced by sio2IpoFree().
| void sio2IpoCurveGetRatio | ( | SIO2ipocurve * | _SIO2ipocurve | ) |
Get the time ratio that should be used between two adjacent points on the SIO2ipocurve.
_SIO2ipocurve: The valid SIO2ipocurve pointer to be reset.
References SIO2ipocurve::curr_point, bez3::knot, SIO2ipocurve::point, SIO2ipocurve::t_ratio, SIO2ipocurve::tv_ratio, SIO2ipocurve::v_ratio, SIO2ipocurve::value, vec2::x, and vec2::y.
Referenced by sio2IpoCurveRender(), and sio2IpoCurveReset().
| SIO2ipocurve* sio2IpoCurveInit | ( | void | ) |
Create a new SIO2ipocurve, associated to an SIO2ipo structure.
return a new SIO2ipocurve structure pointer.
Referenced by sio2IpoLoad().
| float sio2IpoCurveRender | ( | SIO2ipocurve * | _SIO2ipocurve, | |
| SIO2window * | _SIO2window | |||
| ) |
Render an SIO2ipocurve, calculating the interpolation of the curve based on the selected method. This method can be either one of the following values:
SIO2_IPO_CURVE_INTERPOLATION_CONSTANT
SIO2_IPO_CURVE_INTERPOLATION_LINEAR
SIO2_IPO_CURVE_INTERPOLATION_BEZIER
Upon completion of the SIO2ipocurve cycle the curve will continue to use on of the following extrapolation mode:
SIO2_IPO_CURVE_EXTRAPOLATION_CONSTANT
SIO2_IPO_CURVE_EXTRAPOLATION_EXTRAPOLATION
SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC
SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC_EXTRAPOLATION
_SIO2ipocurve: A valid SIO2ipocurve structure pointer.
_SIO2window: A valid SIO2window structure pointer used to increment the delta time of the SIO2ipocurve.
return the value of the current SIO2ipocurve.
References SIO2ipocurve::curr_point, SIO2window::d_time, SIO2ipocurve::d_time, SIO2ipocurve::extrapolation, bez3::hdl1, bez3::hdl2, SIO2ipocurve::interpolation, bez3::knot, SIO2ipocurve::n_point, SIO2ipocurve::point, SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC, SIO2_IPO_CURVE_EXTRAPOLATION_CYCLIC_EXTRAPOLATION, SIO2_IPO_CURVE_EXTRAPOLATION_EXTRAPOLATION, SIO2_IPO_CURVE_INTERPOLATION_BEZIER, SIO2_IPO_CURVE_INTERPOLATION_LINEAR, sio2CubicBezier(), sio2IpoCurveGetRatio(), sio2IpoCurveReset(), SIO2ipocurve::t_ratio, SIO2ipocurve::tv_ratio, SIO2ipocurve::value, and vec2::y.
Referenced by sio2IpoRender().

| float sio2IpoCurveReset | ( | SIO2ipocurve * | _SIO2ipocurve | ) |
Reset an SIO2ipocurve back to its original point.
_SIO2ipocurve: The valid SIO2ipocurve pointer to be reset.
return the value of the current _SIO2ipocurve after beeing reset.
References SIO2ipocurve::curr_point, SIO2ipocurve::d_time, sio2IpoCurveGetRatio(), and SIO2ipocurve::value.
Referenced by sio2IpoCurveRender(), and sio2IpoReset().

1.5.6