| Clutter Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Implemented Interfaces | Properties | Signals | ||||
ClutterBehaviourPathClutterBehaviourPath — A behaviour for moving actors along a ClutterPath |
ClutterBehaviourPath; ClutterBehaviourPathClass; ClutterBehaviour * clutter_behaviour_path_new (ClutterAlpha *alpha,ClutterPath *path); ClutterBehaviour * clutter_behaviour_path_new_with_description (ClutterAlpha *alpha,const gchar *desc); ClutterBehaviour * clutter_behaviour_path_new_with_knots (ClutterAlpha *alpha,const ClutterKnot *knots,guint n_knots); void clutter_behaviour_path_set_path (ClutterBehaviourPath *pathb,ClutterPath *path); ClutterPath * clutter_behaviour_path_get_path (ClutterBehaviourPath *pathb); ClutterKnot; ClutterKnot * clutter_knot_copy (const ClutterKnot *knot); void clutter_knot_free (ClutterKnot *knot); gboolean clutter_knot_equal (const ClutterKnot *knot_a,const ClutterKnot *knot_b);
ClutterBehaviourPath interpolates actors along a defined path.
A path is described by a ClutterPath object. The path can contain
straight line parts and bezier curves. If the path contains
CLUTTER_PATH_MOVE_TO parts then the actors will jump to those
coordinates. This can be used make disjoint paths.
When creating a path behaviour in a ClutterScript, you can specify the path property directly as a string. For example:
1 2 3 4 5 6 7 8 9 |
{
"id" : "spline-path",
"type" : "ClutterBehaviourPath",
"path" : "M 50 50 L 100 100",
"alpha" : {
"timeline" : "main-timeline",
"function" : "ramp
}
} |
CLUTTER_ALPHA_MAX_ALPHA, then the actors will walk
the path back to the starting ClutterKnot.
ClutterBehaviourPath is available since Clutter 0.2
typedef struct _ClutterBehaviourPath ClutterBehaviourPath;
The ClutterBehaviourPath structure contains only private data and should be accessed using the provided API
Since 0.2
typedef struct {
void (*knot_reached) (ClutterBehaviourPath *pathb,
guint knot_num);
} ClutterBehaviourPathClass;
The ClutterBehaviourPathClass struct contains only private data
Since 0.2
ClutterBehaviour * clutter_behaviour_path_new (ClutterAlpha *alpha,ClutterPath *path);
Creates a new path behaviour. You can use this behaviour to drive
actors along the nodes of a path, described by path.
This will claim the floating reference on the ClutterPath so you do not need to unref if it.
|
a ClutterAlpha, or NULL
|
|
a ClutterPath or NULL for an empty path
|
Returns : |
a ClutterBehaviour |
Since 0.2
ClutterBehaviour * clutter_behaviour_path_new_with_description (ClutterAlpha *alpha,const gchar *desc);
Creates a new path behaviour using the path described by desc. See
clutter_path_add_string() for a description of the format.
|
a ClutterAlpha |
|
a string description of the path |
Returns : |
a ClutterBehaviour |
Since 1.0
ClutterBehaviour * clutter_behaviour_path_new_with_knots (ClutterAlpha *alpha,const ClutterKnot *knots,guint n_knots);
Creates a new path behaviour that will make the actors visit all of the given knots in order with straight lines in between.
A path will be created where the first knot is used in a
CLUTTER_PATH_MOVE_TO and the subsequent knots are used in
CLUTTER_PATH_LINE_TOs.
|
a ClutterAlpha |
|
an array of ClutterKnots |
|
number of entries in knots
|
Returns : |
a ClutterBehaviour |
Since 1.0
void clutter_behaviour_path_set_path (ClutterBehaviourPath *pathb,ClutterPath *path);
Change the path that the actors will follow. This will take the floating reference on the ClutterPath so you do not need to unref it.
|
the path behaviour |
|
the new path to follow |
Since 1.0
ClutterPath * clutter_behaviour_path_get_path (ClutterBehaviourPath *pathb);
Get the current path of the behaviour
|
a ClutterBehaviourPath instance |
Returns : |
the path . transfer none. |
Since 1.0
ClutterKnot * clutter_knot_copy (const ClutterKnot *knot);
Makes an allocated copy of a knot.
|
a ClutterKnot |
Returns : |
the copied knot. |
Since 0.2
void clutter_knot_free (ClutterKnot *knot);
Frees the memory of an allocated knot.
|
a ClutterKnot |
Since 0.2
gboolean clutter_knot_equal (const ClutterKnot *knot_a,const ClutterKnot *knot_b);
Compares to knot and checks if the point to the same location.
|
First knot |
|
Second knot |
Returns : |
TRUE if the knots point to the same location.
|
Since 0.2
"path" property"path" ClutterPath* : Read / Write
The ClutterPath object representing the path to animate along.
"knot-reached" signalvoid user_function (ClutterBehaviourPath *pathb, guint knot_num, gpointer user_data) : Run Last
This signal is emitted each time a node defined inside the path is reached.
|
the object which received the signal |
|
the index of the ClutterPathKnot reached |
|
user data set when the signal handler was connected. |
Since 0.2