DI-Guy SDK Documentation  13.8
diguyLinkController Class Reference

A class that allows end users to override a character's animation on a joint level. this class complements the diguyPoseOverride system with one that is a bit more scriptable and can handle automatic animation effects. More...

#include <diguyLinkController.h>

Public Member Functions

Accessor Functions

The functions in this section provide access to data in this object.

They are designed to be called by DI-Guy programmers.

Unless otherwise noted all functions in this class section are callable from:

  • C++
  • Script
const char * get_name ()
 Returns the name of the link. More...
 
int set_translation_override (float x, float y, float z, float ramp_time=.25f)
 sets the desired translation of the joint with an interpolation time, by default this will be in the space of the parent joint and absolute. More...
 
int set_translation_override (float x, float y, float z, float vx, float vy, float vz, float ramp_time=.25f)
 sets the desired translation of the joint with a velocity, this will continue moving till stopped More...
 
int set_translation_velocity (float vx, float vy, float vz, float ramp_time=.25f)
 gives the joint a velocity, this will continue moving till stopped More...
 
int end_translation_override (float ramp_time=.25f)
 ends the desired translation of the joint, this will fade out the change More...
 
int set_translation_additive (int additive)
 should the translation add to the incoming translation value or replace, defaults to 0 - replace More...
 
int set_translation_post_rotation (int post_rotation)
 should the translation be applied post the joints rotation ie in the local space of this joint defaults to 0 - parent joint space More...
 
int set_translation_restore_time (float snap_back_time)
 sets an amount of time to take to restore to the original untweeked value once the desired translation is achieved More...
 
int set_rotation_override (float rz, float rx, float ry, float ramp_time=.25f)
 sets the desired rotation of the joint with an interpolation time, by default this will be in the space of the parent joint and absolute. More...
 
int set_rotation_override (float rz, float rx, float ry, float vrz, float vrx, float vry, float ramp_time=.25f)
 sets the desired rotation of the joint with a velocity, this will continue moving till stopped More...
 
int set_rotation_velocity (float vrz, float vrx, float vry, float ramp_time=.25f)
 gives the joint a rotational velocity, this will continue moving till stopped More...
 
int end_rotation_override (float ramp_time=.25f)
 ends the desired rotation of the joint, this will fade out the change More...
 
int set_rotation_additive (int additive)
 should the rotation add to the incoming rotation value or replace, defaults to 0 - replace More...
 
int set_rotation_restore_time (float time)
 sets an amount of time to take to restore to the original untweeked value once the desired rotation is achieved More...
 

Private Functions

The functions and variables past this point are for internal use only.

No external access to them is expected or necessary.

bdiLinkControllerm_scripted_object
 A pointer to internal data. More...
 
class bdiLink
 
class bdiLinkController
 
bdiLinkControllerget_scripted_object ()
 
 diguyLinkController (bdiLinkController *internal_data)
 A protected constructor. More...
 
virtual ~diguyLinkController ()
 A protected destructor. More...
 

Detailed Description

A class that allows end users to override a character's animation on a joint level. this class complements the diguyPoseOverride system with one that is a bit more scriptable and can handle automatic animation effects.

Constructor & Destructor Documentation

diguyLinkController::diguyLinkController ( bdiLinkController internal_data)
protected

A protected constructor.

Constructors are called automatically by DI-Guy.

virtual diguyLinkController::~diguyLinkController ( )
protectedvirtual

A protected destructor.

Destructors are called automatically by DI-Guy.

Member Function Documentation

const char* diguyLinkController::get_name ( )

Returns the name of the link.

This pointer will never be NULL.

Returns:

name of the link that this controller modifies

int diguyLinkController::set_translation_override ( float  x,
float  y,
float  z,
float  ramp_time = .25f 
)

sets the desired translation of the joint with an interpolation time, by default this will be in the space of the parent joint and absolute.

int diguyLinkController::set_translation_override ( float  x,
float  y,
float  z,
float  vx,
float  vy,
float  vz,
float  ramp_time = .25f 
)

sets the desired translation of the joint with a velocity, this will continue moving till stopped

int diguyLinkController::set_translation_velocity ( float  vx,
float  vy,
float  vz,
float  ramp_time = .25f 
)

gives the joint a velocity, this will continue moving till stopped

int diguyLinkController::end_translation_override ( float  ramp_time = .25f)

ends the desired translation of the joint, this will fade out the change

int diguyLinkController::set_translation_additive ( int  additive)

should the translation add to the incoming translation value or replace, defaults to 0 - replace

int diguyLinkController::set_translation_post_rotation ( int  post_rotation)

should the translation be applied post the joints rotation ie in the local space of this joint defaults to 0 - parent joint space

int diguyLinkController::set_translation_restore_time ( float  snap_back_time)

sets an amount of time to take to restore to the original untweeked value once the desired translation is achieved

int diguyLinkController::set_rotation_override ( float  rz,
float  rx,
float  ry,
float  ramp_time = .25f 
)

sets the desired rotation of the joint with an interpolation time, by default this will be in the space of the parent joint and absolute.

int diguyLinkController::set_rotation_override ( float  rz,
float  rx,
float  ry,
float  vrz,
float  vrx,
float  vry,
float  ramp_time = .25f 
)

sets the desired rotation of the joint with a velocity, this will continue moving till stopped

int diguyLinkController::set_rotation_velocity ( float  vrz,
float  vrx,
float  vry,
float  ramp_time = .25f 
)

gives the joint a rotational velocity, this will continue moving till stopped

int diguyLinkController::end_rotation_override ( float  ramp_time = .25f)

ends the desired rotation of the joint, this will fade out the change

int diguyLinkController::set_rotation_additive ( int  additive)

should the rotation add to the incoming rotation value or replace, defaults to 0 - replace

int diguyLinkController::set_rotation_restore_time ( float  time)

sets an amount of time to take to restore to the original untweeked value once the desired rotation is achieved

bdiLinkController* diguyLinkController::get_scripted_object ( )
inline

Friends And Related Function Documentation

friend class bdiLink
friend
friend class bdiLinkController
friend

Member Data Documentation

bdiLinkController* diguyLinkController::m_scripted_object
private

A pointer to internal data.


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