OGRE-Next: Ogre::v1::OldBone Class Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Public Member Functions | List of all members
Ogre::v1::OldBone Class Reference
Core » Animation

A bone in a skeleton. More...

`#include <OgreOldBone.h>`

Inheritance diagram for Ogre::v1::OldBone:
[legend]

## Public Member Functions
| OldBone (const String &name, unsigned short handle, Skeleton *creator)
| Constructor, not to be used directly (use OldBone::createChild or Skeleton::createBone)
| OldBone (unsigned short handle, Skeleton *creator)
| Constructor, not to be used directly (use OldBone::createChild or Skeleton::createBone)
| ~OldBone () override
const Quaternion & | _getBindingPoseInverseOrientation () const
| Gets the inverted binding pose orientation.
const Vector3 & | _getBindingPoseInversePosition () const
| Gets the inverted binding pose position.
const Vector3 & | _getBindingPoseInverseScale () const
| Gets the inverted binding pose scale.
void | _getOffsetTransform (Matrix4 &m) const
| Gets the transform which takes bone space to current from the binding pose.
OldBone * | createChild (unsigned short handle, const Vector3 &translate=Vector3::ZERO, const Quaternion &rotate=Quaternion::IDENTITY)
| Creates a new OldBone as a child of this bone.
unsigned short | getHandle () const
| Gets the numeric handle for this bone (unique within the skeleton).
bool | isManuallyControlled () const
| Getter for mManuallyControlled Flag.
void | needUpdate (bool forceParentUpdate=false) override
void | reset ()
| Resets the position and orientation of this OldBone to the original binding position.
void | setBindingPose ()
| Sets the current position / orientation to be the 'binding pose' ie the layout in which bones were originally bound to a mesh.
void | setManuallyControlled (bool manuallyControlled)
| Sets whether or not this bone is manually controlled.
Public Member Functions inherited from Ogre::v1::OldNode
| OldNode ()
| Constructor, should only be called by parent, not directly.
| OldNode (const String &name)
| Constructor, should only be called by parent, not directly.
virtual | ~OldNode ()
virtual const Quaternion & | _getDerivedOrientation () const
| Gets the orientation of the OldNode as derived from all parents.
virtual const Vector3 & | _getDerivedPosition () const
| Gets the position of the OldNode as derived from all parents.
virtual const Vector3 & | _getDerivedScale () const
| Gets the scaling factor of the OldNode as derived from all parents.
virtual const Matrix4 & | _getFullTransform () const
| Gets the full transformation matrix for this OldNode.
virtual void | _setDerivedOrientation (const Quaternion &q)
| Sets the final world orientation of the OldNode directly.
virtual void | _setDerivedPosition (const Vector3 &pos)
| Sets the final world position of the OldNode directly.
virtual void | _update (bool updateChildren, bool parentHasChanged)
| Internal method to update the OldNode.
virtual void | addChild (OldNode *child)
| Adds a (precreated) child scene OldNode to this OldNode.
virtual void | cancelUpdate (OldNode *child)
| Called by children to notify their parent that they no longer need an update.
virtual Quaternion | convertLocalToWorldOrientation (const Quaternion &localOrientation)
| Gets the world orientation of an orientation in the OldNode local space useful for simple transforms that don't require a child OldNode.
virtual Vector3 | convertLocalToWorldPosition (const Vector3 &localPos)
| Gets the world position of a point in the OldNode local space useful for simple transforms that don't require a child OldNode.
virtual Quaternion | convertWorldToLocalOrientation (const Quaternion &worldOrientation)
| Gets the local orientation, relative to this OldNode, of the given world-space orientation.
virtual Vector3 | convertWorldToLocalPosition (const Vector3 &worldPos)
| Gets the local position, relative to this OldNode, of the given world-space position.
virtual OldNode * | getChild (const String &name) const
| Gets a pointer to a named child OldNode.
virtual OldNode * | getChild (unsigned short index) const
| Gets a pointer to a child OldNode.
virtual ChildOldNodeIterator | getChildIterator ()
| Retrieves an iterator for efficiently looping through all children of this OldNode.
virtual ConstChildOldNodeIterator | getChildIterator () const
| Retrieves an iterator for efficiently looping through all children of this OldNode.
virtual bool | getInheritOrientation () const
| Returns true if this OldNode is affected by orientation applied to the parent OldNode.
virtual bool | getInheritScale () const
| Returns true if this OldNode is affected by scaling factors applied to the parent OldNode.
virtual const Quaternion & | getInitialOrientation () const
| Gets the initial orientation of this OldNode, see setInitialState for more info.
virtual const Vector3 & | getInitialPosition () const
| Gets the initial position of this OldNode, see setInitialState for more info.
virtual const Vector3 & | getInitialScale () const
| Gets the initial position of this OldNode, see setInitialState for more info.
virtual Listener * | getListener () const
| Gets the current listener for this OldNode.
virtual Matrix3 | getLocalAxes () const
| Gets a matrix whose columns are the local axes based on the OldNodes orientation relative to it's parent.
const String & | getName () const
| Returns the name of the OldNode.
virtual const Quaternion & | getOrientation () const
| Returns a quaternion representing the OldNodes orientation.
virtual OldNode * | getParent () const
| Gets this OldNode's parent (NULL if this is the root).
virtual const Vector3 & | getPosition () const
| Gets the position of the OldNode relative to it's parent.
virtual const Vector3 & | getScale () const
| Gets the scaling factor of this OldNode.
virtual Real | getSquaredViewDepth (const Camera *cam) const
| Helper function, get the squared view depth.
virtual const Any & | getUserAny () const
UserObjectBindings & | getUserObjectBindings ()
| Return an instance of user objects binding associated with this class.
const UserObjectBindings & | getUserObjectBindings () const
| Return an instance of user objects binding associated with this class.
virtual unsigned short | numChildren () const
| Reports the number of child OldNodes under this one.
virtual void | pitch (const Radian &angle, TransformSpace relativeTo=TS_LOCAL)
| Rotate the OldNode around the X-axis.
virtual void | removeAllChildren ()
| Removes all child OldNodes attached to this OldNode.
virtual OldNode * | removeChild (const String &name)
| Drops the named child from this OldNode.
virtual OldNode * | removeChild (OldNode *child)
| Drops the specified child from this OldNode.
virtual OldNode * | removeChild (unsigned short index)
| Drops the specified child from this OldNode.
virtual void | requestUpdate (OldNode *child, bool forceParentUpdate=false)
| Called by children to notify their parent that they need an update.
virtual void | resetOrientation ()
| Resets the OldNodes orientation (local axes as world axes, no rotation).
virtual void | resetToInitialState ()
| Resets the position / orientation / scale of this OldNode to it's initial state, see setInitialState for more info.
virtual void | roll (const Radian &angle, TransformSpace relativeTo=TS_LOCAL)
| Rotate the OldNode around the Z-axis.
virtual void | rotate (const Quaternion &q, TransformSpace relativeTo=TS_LOCAL)
| Rotate the OldNode around an arbitrary axis using a Quarternion.
virtual void | rotate (const Vector3 &axis, const Radian &angle, TransformSpace relativeTo=TS_LOCAL)
| Rotate the OldNode around an arbitrary axis.
virtual void | scale (const Vector3 &scale)
| Scales the OldNode, combining it's current scale with the passed in scaling factor.
virtual void | scale (Real x, Real y, Real z)
| Scales the OldNode, combining it's current scale with the passed in scaling factor.
virtual void | setInheritOrientation (bool inherit)
| Tells the OldNode whether it should inherit orientation from it's parent OldNode.
virtual void | setInheritScale (bool inherit)
| Tells the OldNode whether it should inherit scaling factors from it's parent OldNode.
virtual void | setInitialState ()
| Sets the current transform of this OldNode to be the 'initial state' ie that position / orientation / scale to be used as a basis for delta values used in keyframe animation.
virtual void | setListener (Listener *listener)
| Sets a listener for this OldNode.
virtual void | setOrientation (const Quaternion &q)
| Sets the orientation of this OldNode via a quaternion.
virtual void | setOrientation (Real w, Real x, Real y, Real z)
| Sets the orientation of this OldNode via quaternion parameters.
virtual void | setPosition (const Vector3 &pos)
| Sets the position of the OldNode relative to it's parent.
virtual void | setPosition (Real x, Real y, Real z)
| Sets the position of the OldNode relative to it's parent.
virtual void | setScale (const Vector3 &scale)
| Sets the scaling factor applied to this OldNode.
virtual void | setScale (Real x, Real y, Real z)
| Sets the scaling factor applied to this OldNode.
virtual void | setUserAny (const Any &anything)
virtual void | translate (const Matrix3 &axes, const Vector3 &move, TransformSpace relativeTo=TS_PARENT)
| Moves the OldNode along arbitrary axes.
virtual void | translate (const Matrix3 &axes, Real x, Real y, Real z, TransformSpace relativeTo=TS_PARENT)
| Moves the OldNode along arbitrary axes.
virtual void | translate (const Vector3 &d, TransformSpace relativeTo=TS_PARENT)
| Moves the OldNode along the Cartesian axes.
virtual void | translate (Real x, Real y, Real z, TransformSpace relativeTo=TS_PARENT)
| Moves the OldNode along the Cartesian axes.
virtual void | yaw (const Radian &angle, TransformSpace relativeTo=TS_LOCAL)
| Rotate the OldNode around the Y-axis.

## Additional Inherited Members
Public Types inherited from Ogre::v1::OldNode
typedef MapIterator< ChildOldNodeMap > | ChildOldNodeIterator
typedef unordered_map< String, OldNode * >::type | ChildOldNodeMap
typedef ConstMapIterator< ChildOldNodeMap > | ConstChildOldNodeIterator
enum | TransformSpace { TS_LOCAL , TS_PARENT , TS_WORLD }
| Enumeration denoting the spaces which a transform can be relative to. More...
Static Public Member Functions inherited from Ogre::v1::OldNode
static void | processQueuedUpdates ()
| Process queued 'needUpdate' calls.
static void | queueNeedUpdate (OldNode *n)
| Queue a 'needUpdate' call to a OldNode safely.

## Detailed Description

A bone in a skeleton.

Remarks
  See Skeleton for more information about the principles behind skeletal animation. This class is a node in the joint hierarchy. Mesh vertices also have assignments to bones to define how they move in relation to the skeleton.

## Constructor & Destructor Documentation

## ◆ OldBone() [1/2]

Ogre::v1::OldBone::OldBone | ( | unsigned short | handle,
|  | Skeleton * | creator )

Constructor, not to be used directly (use OldBone::createChild or Skeleton::createBone)

Referenced by createChild().

## ◆ OldBone() [2/2]

Ogre::v1::OldBone::OldBone | ( | const String & | name,
|  | unsigned short | handle,
|  | Skeleton * | creator )

Constructor, not to be used directly (use OldBone::createChild or Skeleton::createBone)

## ◆ ~OldBone()

Ogre::v1::OldBone::~OldBone | ( |  | ) |
| override

## Member Function Documentation

## ◆ _getBindingPoseInverseOrientation()

const Quaternion & Ogre::v1::OldBone::_getBindingPoseInverseOrientation | ( |  | ) | const
| inline

Gets the inverted binding pose orientation.

## ◆ _getBindingPoseInversePosition()

const Vector3 & Ogre::v1::OldBone::_getBindingPoseInversePosition | ( |  | ) | const
| inline

Gets the inverted binding pose position.

## ◆ _getBindingPoseInverseScale()

const Vector3 & Ogre::v1::OldBone::_getBindingPoseInverseScale | ( |  | ) | const
| inline

Gets the inverted binding pose scale.

## ◆ _getOffsetTransform()

void Ogre::v1::OldBone::_getOffsetTransform | ( | Matrix4 & | m | ) | const

Gets the transform which takes bone space to current from the binding pose.

Remarks
  Internal use only.

## ◆ createChild()

OldBone * Ogre::v1::OldBone::createChild | ( | unsigned short | handle,
|  | const Vector3 & | translate = Vector3::ZERO,
|  | const Quaternion & | rotate = Quaternion::IDENTITY )

Creates a new OldBone as a child of this bone.

Remarks
  This method creates a new bone which will inherit the transforms of this bone, with the handle specified.

Parameters

  handle | The numeric handle to give the new bone; must be unique within the Skeleton.
  translate | Initial translation offset of child relative to parent
  rotate | Initial rotation relative to parent

References OldBone(), Ogre::Quaternion::IDENTITY, Ogre::v1::OldNode::rotate(), Ogre::v1::OldNode::translate(), and Ogre::Vector3::ZERO.

## ◆ getHandle()

unsigned short Ogre::v1::OldBone::getHandle | ( |  | ) | const

Gets the numeric handle for this bone (unique within the skeleton).

## ◆ isManuallyControlled()

bool Ogre::v1::OldBone::isManuallyControlled | ( |  | ) | const

Getter for mManuallyControlled Flag.

## ◆ needUpdate()

void Ogre::v1::OldBone::needUpdate | ( | bool | forceParentUpdate = false | ) |
| overridevirtual

See also
  OldNode::needUpdate

Reimplemented from Ogre::v1::OldNode.

Reimplemented in Ogre::v1::TagPoint.

References Ogre::v1::OldNode::OldNode().

## ◆ reset()

void Ogre::v1::OldBone::reset | ( |  | ) |

Resets the position and orientation of this OldBone to the original binding position.

Remarks
  Bones are bound to the mesh in a binding pose. They are then modified from this position during animation. This method returns the bone to it's original position and orientation.

## ◆ setBindingPose()

void Ogre::v1::OldBone::setBindingPose | ( |  | ) |

Sets the current position / orientation to be the 'binding pose' ie the layout in which bones were originally bound to a mesh.

## ◆ setManuallyControlled()

void Ogre::v1::OldBone::setManuallyControlled | ( | bool | manuallyControlled | ) |

Sets whether or not this bone is manually controlled.

Remarks
  Manually controlled bones can be altered by the application at runtime, and their positions will not be reset by the animation routines. Note that you should also make sure that there are no AnimationTrack objects referencing this bone, or if there are, you should disable them using pAnimation->destroyTrack(pBone->getHandle());

  You can also use AnimationState::setBlendMask to mask out animation from chosen tracks if you want to prevent application of a scripted animation to a bone without altering the Animation definition.

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

- OgreOldBone.h