AlAimConstraint
Interface to IK aim constraint data.
Synopsis
#include <AlAimConstraint.h>
class AlAimConstraint : public AlConstraint
AlAimConstraint();
virtual ~AlAimConstraint();
virtual AlObject* copyWrapper() const;
statusCode create(AlDagNode*, AlDagNode*, AlAimConstraintAxis, AlAimConstraintAxis );
statusCode create(AlDagNode*, AlDagNode*, AlAimConstraintAxis, AlAimConstraintAxis, double[2] );
virtual AlObjectType type() const;
AlAimConstraintAxis aimAxis( void ) const;
AlAimConstraintAxis upAxis( void ) const;
statusCode at( double[3] ) const;
statusCode setAimAxis( AlAimConstraintAxis );
statusCode setUpAxis( AlAimConstraintAxis );
Description
The AlAimConstraint class allows access to the IK aim constraint information on an AlJoint. This class is derived from the AlConstraint class.
(See the discussion of skeletons, joints, constraints, IK, and so on, in the printed reference manuals for a full description.)
AlAimConstraint::AlAimConstraint()
Description
Constructs an AlAimConstraint wrapper object.
AlAimConstraint::~AlAimConstraint()
Description
Deletes an AlAimConstraint wrapper object.
AlObject *AlAimConstraint::copyWrapper() const
Description
Wrapper object duplicator for AlAimConstraint.
statusCode AlAimConstraint::create(AlDagNode* srcNode, AlDagNode* destNode, AlAimConstraintAxis aim, AlAimConstraintAxis up)
Description
Does all the initialization necessary to attach the constraint node to the DAG node as an aim constraint. A DAG node can not be constrained to itself.
Arguments
< srcNode - AlDagNode this constraint is to be added to
< destNode - AlDagNode that srcNode is constrained to
< aim - the axis this constraint is tied to
< up - the up axis which completes the constraint
Return Codes
sInvalidArgument - one of the arguments was wrong or tried to constrain a node to itself
sInsufficientMemory - ran out of memory
sFailure - failed to add the constraint
sSuccess - successfully added the constraint
statusCode AlAimConstraint::create(AlDagNode* srcNode, AlDagNode* destNode, AlAimConstraintAxis aim, AlAimConstraintAxis up, double uv[2])
Description
This method does all the initialization necessary to attach the constraint node to the dag node as an uv aim constraint. A dag node can not be constrained to itself. The destNode must be spline geometry node, for example, spline curve or a spline surface.
Arguments
< srcNode - AlDagNode this constraint is to be added to.
< destNode - AlDagNode that srcNode is constrained to.
< aim - The axis this constraint is tied to.
< up - The up axis which completes the constraint.
< uv[2] - The uv parameter on destNode that srcNode is constrained to. If the destNode is a curve, only uv[0] is used.
Return Codes
sInvalidArgument - one of the arguments was wrong or tried to constrain a node to itself.
sInsufficientMemory - ran out of memory.
sFailure - failed to add the constraint.
sSuccess - successfully added the constraint.
AlObjectType AlAimConstraint::type() const
Description
Returns the class identifier kAimConstraintType;
AlAimConstraintAxis AlAimConstraint::aimAxis( void ) const
Description
Returns the aim axis associated with this constraint.
AlAimConstraintAxis AlAimConstraint::upAxis( void ) const
Description
Returns the up axis associated with this constraint.
statusCode AlAimConstraint::at( double point[3] ) const
Description
Puts the aimed-at point into the passed-in argument. Returns a statusCode indicating whether the method was successful.
statusCode AlAimConstraint::setAimAxis( AlAimConstraintAxis axis )
Description
Sets the aim axis for this constraint to the passed-in argument.
statusCode AlAimConstraint::setUpAxis( AlAimConstraintAxis axis )
Description
Sets the up axis for this constraint to the passed-in argument.