ClutterBehaviourPath

ClutterBehaviourPath — A behaviour for moving actors along a ClutterPath

Properties

ClutterPath * path Read / Write

Signals

void knot-reached Run Last

Types and Values

Object Hierarchy

    GObject
    ╰── ClutterBehaviour
        ╰── ClutterBehaviourPath

Implemented Interfaces

ClutterBehaviourPath implements ClutterScriptable.

Description

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
   }
}

If the alpha function is a periodic function, i.e. it returns to 0.0 after reaching 1.0, then the actors will walk the path back to the starting ClutterKnot.

ClutterBehaviourPath is available since Clutter 0.2

Functions

clutter_behaviour_path_new ()

ClutterBehaviour *
clutter_behaviour_path_new (ClutterAlpha *alpha,
                            ClutterPath *path);

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

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.

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]

path

a ClutterPath or NULL for an empty path

 

Returns

a ClutterBehaviour.

[transfer full]

Since: 0.2


clutter_behaviour_path_new_with_description ()

ClutterBehaviour *
clutter_behaviour_path_new_with_description
                               (ClutterAlpha *alpha,
                                const gchar *desc);

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

Creates a new path behaviour using the path described by desc . See clutter_path_add_string() for a description of the format.

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]

desc

a string description of the path

 

Returns

a ClutterBehaviour.

[transfer full]

Since: 1.0


clutter_behaviour_path_new_with_knots ()

ClutterBehaviour *
clutter_behaviour_path_new_with_knots (ClutterAlpha *alpha,
                                       const ClutterKnot *knots,
                                       guint n_knots);

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

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.

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]

knots

an array of ClutterKnots.

[array length=n_knots]

n_knots

number of entries in knots

 

Returns

a ClutterBehaviour.

[transfer full]

Since: 1.0


clutter_behaviour_path_set_path ()

void
clutter_behaviour_path_set_path (ClutterBehaviourPath *pathb,
                                 ClutterPath *path);

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

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.

Parameters

pathb

the path behaviour

 

path

the new path to follow

 

Since: 1.0


clutter_behaviour_path_get_path ()

ClutterPath *
clutter_behaviour_path_get_path (ClutterBehaviourPath *pathb);

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

Get the current path of the behaviour

Parameters

pathb

a ClutterBehaviourPath instance

 

Returns

the path.

[transfer none]

Since: 1.0

Types and Values

struct ClutterBehaviourPath

struct ClutterBehaviourPath;

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

Use ClutterPathConstraint and clutter_actor_animate() instead.

The ClutterBehaviourPath structure contains only private data and should be accessed using the provided API

Since: 0.2


struct ClutterBehaviourPathClass

struct ClutterBehaviourPathClass {
  void (*knot_reached) (ClutterBehaviourPath *pathb,
                        guint                 knot_num);
};

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

The ClutterBehaviourPathClass struct contains only private data

Members

knot_reached ()

signal class handler for the ClutterBehaviourPath::knot_reached signal

 

Since: 0.2

Property Details

The “path” property

  “path”                     ClutterPath *

The ClutterPath object representing the path to animate along.

Flags: Read / Write

Signal Details

The “knot-reached” signal

void
user_function (ClutterBehaviourPath *pathb,
               guint                 knot_num,
               gpointer              user_data)

This signal is emitted each time a node defined inside the path is reached.

ClutterBehaviourPath::knot-reached has been deprecated since version 1.6 and should not be used in newly-written code.

Parameters

pathb

the object which received the signal

 

knot_num

the index of the ClutterKnot reached

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

Since: 0.2