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.