## ClutterBehaviourRotate

ClutterBehaviourRotate — A behaviour controlling rotation

## Functions

ClutterBehaviour * | clutter_behaviour_rotate_new ()
void | clutter_behaviour_rotate_set_axis ()
ClutterRotateAxis | clutter_behaviour_rotate_get_axis ()
void | clutter_behaviour_rotate_set_direction ()
ClutterRotateDirection | clutter_behaviour_rotate_get_direction ()
void | clutter_behaviour_rotate_set_bounds ()
void | clutter_behaviour_rotate_get_bounds ()
void | clutter_behaviour_rotate_set_center ()
void | clutter_behaviour_rotate_get_center ()

## Properties

gdouble | angle-end | Read / Write
gdouble | angle-start | Read / Write
ClutterRotateAxis | axis | Read / Write
gint | center-x | Read / Write
gint | center-y | Read / Write
gint | center-z | Read / Write
ClutterRotateDirection | direction | Read / Write

## Types and Values

enum | ClutterRotateAxis
enum | ClutterRotateDirection
struct | ClutterBehaviourRotate
struct | ClutterBehaviourRotateClass

## Object Hierarchy

        GObject
        ╰── ClutterBehaviour
            ╰── ClutterBehaviourRotate

## Implemented Interfaces

ClutterBehaviourRotate implements ClutterScriptable.

## Description

A ClutterBehaviourRotate rotate actors between a starting and ending angle on a given axis.

The ClutterBehaviourRotate is available since version 0.4.

## Functions

### clutter_behaviour_rotate_new ()

    ClutterBehaviour *
    clutter_behaviour_rotate_new (ClutterAlpha *alpha,
                                  ClutterRotateAxis axis,
                                  ClutterRotateDirection direction,
                                  gdouble angle_start,
                                  gdouble angle_end);

`clutter_behaviour_rotate_new` is deprecated and should not be used in newly-written code.

Creates a new ClutterBehaviourRotate. This behaviour will rotate actors bound to it on `axis` , following `direction` , between `angle_start` and `angle_end` . Angles >= 360 degrees will be clamped to the canonical interval <0, 360), if angle_start == angle_end, the behaviour will carry out a single rotation of 360 degrees.

If `alpha` is not `NULL`, the ClutterBehaviour will take ownership of the ClutterAlpha instance. In the case when `alpha` is `NULL`, it can be set later with `clutter_behaviour_set_alpha()`.

#### Parameters

alpha | a ClutterAlpha instance, or `NULL`. | [allow-none]
axis | the rotation axis |
direction | the rotation direction |
angle_start | the starting angle in degrees, between 0 and 360. |
angle_end | the final angle in degrees, between 0 and 360. |

#### Returns

the newly created ClutterBehaviourRotate.

Since 0.4

### clutter_behaviour_rotate_set_axis ()

    void
    clutter_behaviour_rotate_set_axis (ClutterBehaviourRotate *rotate,
                                       ClutterRotateAxis axis);

`clutter_behaviour_rotate_set_axis` is deprecated and should not be used in newly-written code.

Sets the axis used by the rotate behaviour.

#### Parameters

rotate | a ClutterBehaviourRotate |
axis | a ClutterRotateAxis |

Since 0.4

### clutter_behaviour_rotate_get_axis ()

    ClutterRotateAxis
    clutter_behaviour_rotate_get_axis (ClutterBehaviourRotate *rotate);

`clutter_behaviour_rotate_get_axis` is deprecated and should not be used in newly-written code.

Retrieves the ClutterRotateAxis used by the rotate behaviour.

#### Parameters

rotate | a ClutterBehaviourRotate |

#### Returns

the rotation axis

Since 0.4

### clutter_behaviour_rotate_set_direction ()

    void
    clutter_behaviour_rotate_set_direction
                                   (ClutterBehaviourRotate *rotate,
                                    ClutterRotateDirection direction);

`clutter_behaviour_rotate_set_direction` is deprecated and should not be used in newly-written code.

Sets the rotation direction used by the rotate behaviour.

#### Parameters

rotate | a ClutterBehaviourRotate |
direction | the rotation direction |

Since 0.4

### clutter_behaviour_rotate_get_direction ()

    ClutterRotateDirection
    clutter_behaviour_rotate_get_direction
                                   (ClutterBehaviourRotate *rotate);

`clutter_behaviour_rotate_get_direction` is deprecated and should not be used in newly-written code.

Retrieves the ClutterRotateDirection used by the rotate behaviour.

#### Parameters

rotate | a ClutterBehaviourRotate |

#### Returns

the rotation direction

Since 0.4

### clutter_behaviour_rotate_set_bounds ()

    void
    clutter_behaviour_rotate_set_bounds (ClutterBehaviourRotate *rotate,
                                         gdouble angle_start,
                                         gdouble angle_end);

`clutter_behaviour_rotate_set_bounds` is deprecated and should not be used in newly-written code.

Sets the initial and final angles of a rotation behaviour; angles >= 360 degrees get clamped to the canonical interval <0, 360).

#### Parameters

rotate | a ClutterBehaviourRotate |
angle_start | initial angle in degrees, between 0 and 360. |
angle_end | final angle in degrees, between 0 and 360. |

Since 0.4

### clutter_behaviour_rotate_get_bounds ()

    void
    clutter_behaviour_rotate_get_bounds (ClutterBehaviourRotate *rotate,
                                         gdouble *angle_start,
                                         gdouble *angle_end);

`clutter_behaviour_rotate_get_bounds` is deprecated and should not be used in newly-written code.

Retrieves the rotation boundaries of the rotate behaviour.

#### Parameters

rotate | a ClutterBehaviourRotate |
angle_start | return value for the initial angle. | [out]
angle_end | return value for the final angle. | [out]

Since 0.4

### clutter_behaviour_rotate_set_center ()

    void
    clutter_behaviour_rotate_set_center (ClutterBehaviourRotate *rotate,
                                         gint x,
                                         gint y,
                                         gint z);

`clutter_behaviour_rotate_set_center` is deprecated and should not be used in newly-written code.

Sets the center of rotation. The coordinates are relative to the plane normal to the rotation axis set with `clutter_behaviour_rotate_set_axis()`.

#### Parameters

rotate | a ClutterBehaviourRotate |
x | X axis center of rotation |
y | Y axis center of rotation |
z | Z axis center of rotation |

Since 0.4

### clutter_behaviour_rotate_get_center ()

    void
    clutter_behaviour_rotate_get_center (ClutterBehaviourRotate *rotate,
                                         gint *x,
                                         gint *y,
                                         gint *z);

`clutter_behaviour_rotate_get_center` is deprecated and should not be used in newly-written code.

Retrieves the center of rotation set using `clutter_behaviour_rotate_set_center()`.

#### Parameters

rotate | a ClutterBehaviourRotate |
x | return location for the X center of rotation. | [out]
y | return location for the Y center of rotation. | [out]
z | return location for the Z center of rotation. | [out]

Since 0.4

## Types and Values

### enum ClutterRotateAxis

Axis of a rotation.

#### Members

CLUTTER_X_AXIS | Rotate around the X axis |
CLUTTER_Y_AXIS | Rotate around the Y axis |
CLUTTER_Z_AXIS | Rotate around the Z axis |

Since 0.4

### enum ClutterRotateDirection

Direction of a rotation.

#### Members

CLUTTER_ROTATE_CW | Clockwise rotation |
CLUTTER_ROTATE_CCW | Counter-clockwise rotation |

Since 0.4

### struct ClutterBehaviourRotate

    struct ClutterBehaviourRotate;

`ClutterBehaviourRotate` has been deprecated since version 1.6 and should not be used in newly-written code.

Use `clutter_actor_animate()` instead.

The ClutterBehaviourRotate struct contains only private data and should be accessed using the provided API

Since 0.4

### struct ClutterBehaviourRotateClass

    struct ClutterBehaviourRotateClass {
    };

`ClutterBehaviourRotateClass` has been deprecated since version 1.6 and should not be used in newly-written code.

The ClutterBehaviourRotateClass struct contains only private data

Since 0.4

## Property Details

### The `“angle-end”` property

      “angle-end”                gdouble

The final angle to where the rotation should end.

Flags: Read / Write

Allowed values: [0,360]

Default value: 0

Since 0.4

### The `“angle-start”` property

      “angle-start”              gdouble

The initial angle from whence the rotation should start.

Flags: Read / Write

Allowed values: [0,360]

Default value: 0

Since 0.4

### The `“axis”` property

      “axis”                     ClutterRotateAxis

The axis of rotation.

Flags: Read / Write

Default value: CLUTTER_Z_AXIS

Since 0.4

### The `“center-x”` property

      “center-x”                 gint

The x center of rotation.

Flags: Read / Write

Allowed values: >= -2147483647

Default value: 0

Since 0.4

### The `“center-y”` property

      “center-y”                 gint

The y center of rotation.

Flags: Read / Write

Allowed values: >= -2147483647

Default value: 0

Since 0.4

### The `“center-z”` property

      “center-z”                 gint

The z center of rotation.

Flags: Read / Write

Allowed values: >= -2147483647

Default value: 0

Since 0.4

### The `“direction”` property

      “direction”                ClutterRotateDirection

The direction of the rotation.

Flags: Read / Write

Default value: CLUTTER_ROTATE_CW

Since 0.4