ClutterBehaviourEllipse

ClutterBehaviourEllipse — elliptic path behaviour.

Synopsis




                    ClutterBehaviourEllipseClass;
ClutterBehaviour*   clutter_behaviour_ellipse_new       (ClutterAlpha *alpha,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height,
                                                         ClutterRotateDirection direction,
                                                         gdouble begin,
                                                         gdouble end);
ClutterBehaviour*   clutter_behaviour_ellipse_newx      (ClutterAlpha *alpha,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height,
                                                         ClutterRotateDirection direction,
                                                         ClutterFixed begin,
                                                         ClutterFixed end);
void                clutter_behaviour_ellipse_set_center
                                                        (ClutterBehaviourEllipse *self,
                                                         gint x,
                                                         gint y);
void                clutter_behaviour_ellipse_get_center
                                                        (ClutterBehaviourEllipse *self,
                                                         gint *x,
                                                         gint *y);
gdouble             clutter_behaviour_ellipse_get_angle_begin
                                                        (ClutterBehaviourEllipse *self);
gdouble             clutter_behaviour_ellipse_get_angle_end
                                                        (ClutterBehaviourEllipse *self);
gdouble             clutter_behaviour_ellipse_get_angle_tilt
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis);
gint                clutter_behaviour_ellipse_get_height
                                                        (ClutterBehaviourEllipse *self);
gint                clutter_behaviour_ellipse_get_width (ClutterBehaviourEllipse *self);
void                clutter_behaviour_ellipse_set_angle_begin
                                                        (ClutterBehaviourEllipse *self,
                                                         gdouble angle_begin);
void                clutter_behaviour_ellipse_set_angle_end
                                                        (ClutterBehaviourEllipse *self,
                                                         gdouble angle_end);
void                clutter_behaviour_ellipse_set_angle_tilt
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis,
                                                         gdouble angle_tilt);
void                clutter_behaviour_ellipse_set_height
                                                        (ClutterBehaviourEllipse *self,
                                                         gint height);
void                clutter_behaviour_ellipse_set_width (ClutterBehaviourEllipse *self,
                                                         gint width);
ClutterAngle        clutter_behaviour_ellipse_get_angle_beginx
                                                        (ClutterBehaviourEllipse *self);
ClutterAngle        clutter_behaviour_ellipse_get_angle_endx
                                                        (ClutterBehaviourEllipse *self);
ClutterAngle        clutter_behaviour_ellipse_get_angle_tiltx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis);
void                clutter_behaviour_ellipse_set_angle_beginx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterAngle angle_begin);
void                clutter_behaviour_ellipse_set_angle_endx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterAngle angle_end);
void                clutter_behaviour_ellipse_set_angle_tiltx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis,
                                                         ClutterAngle angle_tilt);
void                clutter_behaviour_ellipse_set_tilt  (ClutterBehaviourEllipse *self,
                                                         gdouble angle_tilt_x,
                                                         gdouble angle_tilt_y,
                                                         gdouble angle_tilt_z);
void                clutter_behaviour_ellipse_get_tilt  (ClutterBehaviourEllipse *self,
                                                         gdouble *angle_tilt_x,
                                                         gdouble *angle_tilt_y,
                                                         gdouble *angle_tilt_z);
void                clutter_behaviour_ellipse_get_tiltx (ClutterBehaviourEllipse *self,
                                                         ClutterAngle *angle_tilt_x,
                                                         ClutterAngle *angle_tilt_y,
                                                         ClutterAngle *angle_tilt_z);
void                clutter_behaviour_ellipse_set_tiltx (ClutterBehaviourEllipse *self,
                                                         ClutterAngle angle_tilt_x,
                                                         ClutterAngle angle_tilt_y,
                                                         ClutterAngle angle_tilt_z);
ClutterRotateDirection clutter_behaviour_ellipse_get_direction
                                                        (ClutterBehaviourEllipse *self);
void                clutter_behaviour_ellipse_set_direction
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateDirection direction);


Description

ClutterBehaviourEllipse interpolates actors along a path defined by an ellipse.

Note, on applying an ellipse behaviour to an actor its position will be set to what is dictated by the ellipses initial position.

Details

ClutterBehaviourEllipseClass

typedef struct {
  void (*knot_reached) (ClutterBehaviourEllipse *ellipseb,
                        const ClutterKnot       *knot);
} ClutterBehaviourEllipseClass;

Ellipse behaviour class

knot_reached () signal class handler for the ClutterBehaviourEllipse::knot_reached signal

Since 0.4


clutter_behaviour_ellipse_new ()

ClutterBehaviour*   clutter_behaviour_ellipse_new       (ClutterAlpha *alpha,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height,
                                                         ClutterRotateDirection direction,
                                                         gdouble begin,
                                                         gdouble end);

Creates a behaviour that drives actors along an elliptical path with given center, width and height; the movement begins at angle_begin degrees (with 0 corresponding to 12 o'clock) and ends at angle_end degrees;

alpha : a ClutterAlpha, or NULL
x : x coordinace of the center
y : y coordiance of the center
width : width of the ellipse
height : height of the ellipse
direction : ClutterRotateDirection of rotation
begin : angle in degrees at which movement begins
end : angle in degrees at which movement ends
Returns : the newly created ClutterBehaviourEllipse

Since 0.4


clutter_behaviour_ellipse_newx ()

ClutterBehaviour*   clutter_behaviour_ellipse_newx      (ClutterAlpha *alpha,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height,
                                                         ClutterRotateDirection direction,
                                                         ClutterFixed begin,
                                                         ClutterFixed end);

Creates a behaviour that drives actors along an elliptical path. This is the fixed point variant of clutter_behaviour_ellipse_new().

alpha : a ClutterAlpha, or NULL
x : x coordinace of the center
y : y coordiance of the center
width : width of the ellipse
height : height of the ellipse
direction : ClutterRotateDirection of rotation
begin : ClutterFixed angle in degrees at which movement begins
end : ClutterFixed angle in degrees at which movement ends
Returns : the newly created ClutterBehaviourEllipse

Since 0.4


clutter_behaviour_ellipse_set_center ()

void                clutter_behaviour_ellipse_set_center
                                                        (ClutterBehaviourEllipse *self,
                                                         gint x,
                                                         gint y);

Sets the center of the elliptical path to the point represented by knot.

self : a ClutterBehaviourEllipse
x : x coordinace of centre
y : y coordinace of centre

Since 0.4


clutter_behaviour_ellipse_get_center ()

void                clutter_behaviour_ellipse_get_center
                                                        (ClutterBehaviourEllipse *self,
                                                         gint *x,
                                                         gint *y);

Gets the center of the elliptical path path.

self : a ClutterBehaviourEllipse
x : location to store the x coordinace of the center, or NULL
y : location to store the y coordinace of the center, or NULL

Since 0.4


clutter_behaviour_ellipse_get_angle_begin ()

gdouble             clutter_behaviour_ellipse_get_angle_begin
                                                        (ClutterBehaviourEllipse *self);

Gets the angle at which movements begins.

self : a ClutterBehaviourEllipse
Returns : angle in degrees

Since 0.4


clutter_behaviour_ellipse_get_angle_end ()

gdouble             clutter_behaviour_ellipse_get_angle_end
                                                        (ClutterBehaviourEllipse *self);

Gets the at which movements ends.

self : a ClutterBehaviourEllipse
Returns : angle in degrees

Since 0.4


clutter_behaviour_ellipse_get_angle_tilt ()

gdouble             clutter_behaviour_ellipse_get_angle_tilt
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis);

Gets the tilt of the ellipse around the center in the given axis.

self : a ClutterBehaviourEllipse
axis : a ClutterRotateAxis
Returns : angle in degrees.

Since 0.4


clutter_behaviour_ellipse_get_height ()

gint                clutter_behaviour_ellipse_get_height
                                                        (ClutterBehaviourEllipse *self);

Gets the height of the elliptical path.

self : a ClutterBehaviourEllipse
Returns : the height of the path

Since 0.4


clutter_behaviour_ellipse_get_width ()

gint                clutter_behaviour_ellipse_get_width (ClutterBehaviourEllipse *self);

Gets the width of the elliptical path.

self : a ClutterBehaviourEllipse
Returns : the width of the path

Since 0.4


clutter_behaviour_ellipse_set_angle_begin ()

void                clutter_behaviour_ellipse_set_angle_begin
                                                        (ClutterBehaviourEllipse *self,
                                                         gdouble angle_begin);

Sets the angle at which movement begins.

self : a ClutterBehaviourEllipse
angle_begin : angle at which movement begins in degrees

Since 0.4


clutter_behaviour_ellipse_set_angle_end ()

void                clutter_behaviour_ellipse_set_angle_end
                                                        (ClutterBehaviourEllipse *self,
                                                         gdouble angle_end);

Sets the angle at which movement ends.

self : a ClutterBehaviourEllipse
angle_end : angle at which movement ends in degrees.

Since 0.4


clutter_behaviour_ellipse_set_angle_tilt ()

void                clutter_behaviour_ellipse_set_angle_tilt
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis,
                                                         gdouble angle_tilt);

Sets the angle at which the ellipse should be tilted around it's center.

self : a ClutterBehaviourEllipse
axis : a ClutterRotateAxis
angle_tilt : tilt of the elipse around the center in the given axis in degrees.

Since 0.4


clutter_behaviour_ellipse_set_height ()

void                clutter_behaviour_ellipse_set_height
                                                        (ClutterBehaviourEllipse *self,
                                                         gint height);

Sets the height of the elliptical path.

self : a ClutterBehaviourEllipse
height : height of the ellipse

Since 0.4


clutter_behaviour_ellipse_set_width ()

void                clutter_behaviour_ellipse_set_width (ClutterBehaviourEllipse *self,
                                                         gint width);

Sets the width of the elliptical path.

self : a ClutterBehaviourEllipse
width : width of the ellipse

Since 0.4


clutter_behaviour_ellipse_get_angle_beginx ()

ClutterAngle        clutter_behaviour_ellipse_get_angle_beginx
                                                        (ClutterBehaviourEllipse *self);

Gets the angle at which movements begins.

self : a ClutterBehaviourEllipse
Returns : a ClutterAngle

Since 0.4


clutter_behaviour_ellipse_get_angle_endx ()

ClutterAngle        clutter_behaviour_ellipse_get_angle_endx
                                                        (ClutterBehaviourEllipse *self);

Gets the angle at which movements ends.

self : a ClutterBehaviourEllipse
Returns : a ClutterAngle

Since 0.4


clutter_behaviour_ellipse_get_angle_tiltx ()

ClutterAngle        clutter_behaviour_ellipse_get_angle_tiltx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis);

Gets the tilt of the ellipse around the center in the given axis.

self : a ClutterBehaviourEllipse
axis : a ClutterRotateAxis
Returns : a ClutterAngle

Since 0.4


clutter_behaviour_ellipse_set_angle_beginx ()

void                clutter_behaviour_ellipse_set_angle_beginx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterAngle angle_begin);

Sets the angle at which movement begins.

self : a ClutterBehaviourEllipse
angle_begin : ClutterAngle at which movement begins

Since 0.4


clutter_behaviour_ellipse_set_angle_endx ()

void                clutter_behaviour_ellipse_set_angle_endx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterAngle angle_end);

Sets the angle at which movement ends.

self : a ClutterBehaviourEllipse
angle_end : ClutterAngle at which movement ends

Since 0.4


clutter_behaviour_ellipse_set_angle_tiltx ()

void                clutter_behaviour_ellipse_set_angle_tiltx
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateAxis axis,
                                                         ClutterAngle angle_tilt);

Sets the angle at which the ellipse should be tilted around it's center.

self : a ClutterBehaviourEllipse
axis : a ClutterRoateAxis
angle_tilt : ClutterAngle tilt of the elipse around the center in the given axis

Since 0.4


clutter_behaviour_ellipse_set_tilt ()

void                clutter_behaviour_ellipse_set_tilt  (ClutterBehaviourEllipse *self,
                                                         gdouble angle_tilt_x,
                                                         gdouble angle_tilt_y,
                                                         gdouble angle_tilt_z);

Sets the angles at which the ellipse should be tilted around it's center.

self : a ClutterBehaviourEllipse
angle_tilt_x : tilt of the elipse around the center in X axis in degrees.
angle_tilt_y : tilt of the elipse around the center in Y axis in degrees.
angle_tilt_z : tilt of the elipse around the center in Z axis in degrees.

Since 0.4


clutter_behaviour_ellipse_get_tilt ()

void                clutter_behaviour_ellipse_get_tilt  (ClutterBehaviourEllipse *self,
                                                         gdouble *angle_tilt_x,
                                                         gdouble *angle_tilt_y,
                                                         gdouble *angle_tilt_z);

Gets the tilt of the ellipse around the center in Y axis.

self : a ClutterBehaviourEllipse
angle_tilt_x : location for tilt of the elipse around the center in X axis in degrees, or NULL.
angle_tilt_y : location for tilt of the elipse around the center in Y axis in degrees, or NULL.
angle_tilt_z : location for tilt of the elipse around the center in Z axis in degrees, or NULL.

Since 0.4


clutter_behaviour_ellipse_get_tiltx ()

void                clutter_behaviour_ellipse_get_tiltx (ClutterBehaviourEllipse *self,
                                                         ClutterAngle *angle_tilt_x,
                                                         ClutterAngle *angle_tilt_y,
                                                         ClutterAngle *angle_tilt_z);

Gets the tilt of the ellipse around the center in Y axis.

self : a ClutterBehaviourEllipse
angle_tilt_x : ClutterAngle location for tilt of the elipse around the center in X axis, or NULL.
angle_tilt_y : ClutterAngle location for tilt of the elipse around the center in Y axis, or NULL.
angle_tilt_z : ClutterAngle location for tilt of the elipse around the center in Z axis, or NULL.

Since 0.4


clutter_behaviour_ellipse_set_tiltx ()

void                clutter_behaviour_ellipse_set_tiltx (ClutterBehaviourEllipse *self,
                                                         ClutterAngle angle_tilt_x,
                                                         ClutterAngle angle_tilt_y,
                                                         ClutterAngle angle_tilt_z);

Sets the angle at which the ellipse should be tilted around it's center.

self : a ClutterBehaviourEllipse
angle_tilt_x : ClutterAngle tilt of the elipse around the center in X axis
angle_tilt_y : ClutterAngle tilt of the elipse around the center in Y axis
angle_tilt_z : ClutterAngle tilt of the elipse around the center in Z axis

Since 0.4


clutter_behaviour_ellipse_get_direction ()

ClutterRotateDirection clutter_behaviour_ellipse_get_direction
                                                        (ClutterBehaviourEllipse *self);

Retrieves the ClutterRotateDirection used by the ellipse behaviour.

self : a ClutterBehaviourEllipse
Returns : the rotation direction

Since 0.4


clutter_behaviour_ellipse_set_direction ()

void                clutter_behaviour_ellipse_set_direction
                                                        (ClutterBehaviourEllipse *self,
                                                         ClutterRotateDirection direction);

Sets the rotation direction used by the ellipse behaviour.

self : a ClutterBehaviourEllipse
direction : the rotation direction

Since 0.4