sio2_ipocurve.h File Reference

This graph shows which files directly or indirectly include this file:

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

SIO2ipocurvesio2IpoCurveInit (void)
SIO2ipocurvesio2IpoCurveFree (SIO2ipocurve *)
float sio2IpoCurveRender (SIO2ipocurve *, SIO2window *)
float sio2IpoCurveReset (SIO2ipocurve *)
void sio2IpoCurveGetRatio (SIO2ipocurve *)


Enumeration Type Documentation

Enumerator:
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.

Enumerator:
SIO2_IPO_CURVE_INTERPOLATION_CONSTANT  Use constant interpolation between control points.
SIO2_IPO_CURVE_INTERPOLATION_LINEAR  Use linear interpolation between control points.
SIO2_IPO_CURVE_INTERPOLATION_BEZIER  Use bezier interpolation between control points.


Function Documentation

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:


Generated on Thu Mar 4 15:41:44 2010 for SIO2 Engine by  doxygen 1.5.6