CUGL 3.0
Cornell University Game Library
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
cugl::scene2::MoveBy Class Reference

#include <CUTransformAction2.h>

Public Member Functions

 MoveBy ()
 
 ~MoveBy ()
 
void dispose ()
 
bool init ()
 
bool init (const Vec2 delta)
 
const Vec2getDelta () const
 
void setDelta (const Vec2 &delta)
 
ActionFunction attach (const std::shared_ptr< scene2::SceneNode > &node)
 

Static Public Member Functions

static std::shared_ptr< MoveByalloc ()
 
static std::shared_ptr< MoveByalloc (const Vec2 delta)
 

Detailed Description

This factory creates an action for movement by a given vector amount.

This class is actually a factory for creating movement actions. To create an action, call attach with the appropriate SceneNode. Note that this class contains no duration information. That is supplied when the action is added to ActionTimeline.

Constructor & Destructor Documentation

◆ MoveBy()

cugl::scene2::MoveBy::MoveBy ( )
inline

Creates an uninitialized movement animation.

NEVER USE A CONSTRUCTOR WITH NEW. If you want to allocate an object on the heap, use one of the static constructors instead.

◆ ~MoveBy()

cugl::scene2::MoveBy::~MoveBy ( )
inline

Deletes this animation, disposing all resources

Member Function Documentation

◆ alloc() [1/2]

static std::shared_ptr< MoveBy > cugl::scene2::MoveBy::alloc ( )
inlinestatic

Returns a newly allocated degenerate movement animation.

The movement amount is set to (0.0, 0.0), meaning no movement takes place.

Returns
a newly allocated degenerate movement animation.

◆ alloc() [2/2]

static std::shared_ptr< MoveBy > cugl::scene2::MoveBy::alloc ( const Vec2  delta)
inlinestatic

Returns a newly allocated movement animation over the given vector.

When animated, this associated action will move its target by the given delta.

Parameters
deltaThe amount to move the attached node
Returns
a newly allocated movement animation over the given vector.

◆ attach()

ActionFunction cugl::scene2::MoveBy::attach ( const std::shared_ptr< scene2::SceneNode > &  node)

Returns an action attaching this animation to the given scene node

This action will reference this object during the animation. Any changes to this object during that time may alter the animation.

Note that the action has no associated duration. That should be set when it is added to ActionTimeline.

Parameters
nodeThe node to attach
Returns
an action attaching this animation to the given scene node

◆ dispose()

void cugl::scene2::MoveBy::dispose ( )
inline

Disposes all of the resources used by this animation.

A disposed animation can be safely reinitialized.

◆ getDelta()

const Vec2 & cugl::scene2::MoveBy::getDelta ( ) const
inline

Returns the movement delta for this animation.

Changing this value for an actively animating action can have undefined side effects.

Returns
the movement delta for this action.

◆ init() [1/2]

bool cugl::scene2::MoveBy::init ( )
inline

Initializes a degenerate movement animation.

The movement amount is set to (0.0, 0.0), meaning no movement takes place.

Returns
true if initialization was successful.

◆ init() [2/2]

bool cugl::scene2::MoveBy::init ( const Vec2  delta)

Initializes a movement animation by the given vector.

When animated, this associated action will move its target by the given delta.

Parameters
deltaThe amount to move the attached node
Returns
true if initialization was successful.

◆ setDelta()

void cugl::scene2::MoveBy::setDelta ( const Vec2 delta)
inline

Sets the movement delta for this action.

Changing this value for an actively animating action can have undefined side effects.

Parameters
deltathe movement delta for this action.

The documentation for this class was generated from the following file: