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

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Ogre::v1::Pose Class Reference
Core » Animation

A pose is a linked set of vertex offsets applying to one set of vertex data. More...

`#include <OgrePose.h>`

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

## Public Types
typedef ConstMapIterator< NormalsMap > | ConstNormalsIterator
| An iterator over the vertex offsets.
typedef ConstMapIterator< VertexOffsetMap > | ConstVertexOffsetIterator
| An iterator over the vertex offsets.
typedef MapIterator< NormalsMap > | NormalsIterator
| An iterator over the vertex offsets.
typedef map< size_t, Vector3 >::type | NormalsMap
| A collection of normals based on the vertex index.
typedef MapIterator< VertexOffsetMap > | VertexOffsetIterator
| An iterator over the vertex offsets.
typedef map< size_t, Vector3 >::type | VertexOffsetMap
| A collection of vertex offsets based on the vertex index.

## Public Member Functions
| Pose (ushort target, const String &name=BLANKSTRING)
| Constructor.
virtual | ~Pose ()
const HardwareVertexBufferSharedPtr & | _getHardwareVertexBuffer (const VertexData *origData) const
| Get a hardware vertex buffer version of the vertex offsets.
void | addVertex (size_t index, const Vector3 &offset)
| Adds an offset to a vertex for this pose.
void | addVertex (size_t index, const Vector3 &offset, const Vector3 &normal)
| Adds an offset to a vertex and a new normal for this pose.
void | clearVertices ()
| Clear all vertices.
Pose * | clone () const
| Clone this pose and create another one configured exactly the same way (only really useful for cloning holders of this class).
bool | getIncludesNormals () const
| Return whether the pose vertices include normals.
const String & | getName () const
| Return the name of the pose (may be blank).
const NormalsMap & | getNormals () const
| Gets a const reference to the vertex offsets.
NormalsIterator | getNormalsIterator ()
| Gets an iterator over all the vertex offsets.
ConstNormalsIterator | getNormalsIterator () const
| Gets an iterator over all the vertex offsets.
ushort | getTarget () const
| Return the target geometry index of the pose.
VertexOffsetIterator | getVertexOffsetIterator ()
| Gets an iterator over all the vertex offsets.
ConstVertexOffsetIterator | getVertexOffsetIterator () const
| Gets an iterator over all the vertex offsets.
const VertexOffsetMap & | getVertexOffsets () const
| Gets a const reference to the vertex offsets.
void | removeVertex (size_t index)
| Remove a vertex offset.

## Detailed Description

A pose is a linked set of vertex offsets applying to one set of vertex data.

Remarks
  The target index referred to by the pose has a meaning set by the user of this class; but for example when used by Mesh it refers to either the Mesh shared geometry (0) or a SubMesh dedicated geometry (1+). Pose instances can be referred to by keyframes in VertexAnimationTrack in order to animate based on blending poses together.

## Member Typedef Documentation

## ◆ ConstNormalsIterator

typedef ConstMapIterator<NormalsMap> Ogre::v1::Pose::ConstNormalsIterator

An iterator over the vertex offsets.

## ◆ ConstVertexOffsetIterator

typedef ConstMapIterator<VertexOffsetMap> Ogre::v1::Pose::ConstVertexOffsetIterator

An iterator over the vertex offsets.

## ◆ NormalsIterator

typedef MapIterator<NormalsMap> Ogre::v1::Pose::NormalsIterator

An iterator over the vertex offsets.

## ◆ NormalsMap

typedef map<size_t,Vector3>::type Ogre::v1::Pose::NormalsMap

A collection of normals based on the vertex index.

## ◆ VertexOffsetIterator

typedef MapIterator<VertexOffsetMap> Ogre::v1::Pose::VertexOffsetIterator

An iterator over the vertex offsets.

## ◆ VertexOffsetMap

typedef map<size_t,Vector3>::type Ogre::v1::Pose::VertexOffsetMap

A collection of vertex offsets based on the vertex index.

## Constructor & Destructor Documentation

## ◆ Pose()

Ogre::v1::Pose::Pose | ( | ushort | target,
|  | const String & | name = BLANKSTRING )

Constructor.

Parameters

  target | The target vertexdata index (0 for shared, 1+ for dedicated at the submesh index + 1)
  name | Optional name

References Ogre::BLANKSTRING.

Referenced by clone().

## ◆ ~Pose()

virtual Ogre::v1::Pose::~Pose | ( |  | ) |
| virtual

## Member Function Documentation

## ◆ _getHardwareVertexBuffer()

const HardwareVertexBufferSharedPtr & Ogre::v1::Pose::_getHardwareVertexBuffer | ( | const VertexData * | origData | ) | const

Get a hardware vertex buffer version of the vertex offsets.

## ◆ addVertex() [1/2]

void Ogre::v1::Pose::addVertex | ( | size_t | index,
|  | const Vector3 & | offset )

Adds an offset to a vertex for this pose.

Parameters

  index | The vertex index
  offset | The position offset for this pose

Referenced by Ogre::VerticesRemapInfo::performPoseRemap().

## ◆ addVertex() [2/2]

void Ogre::v1::Pose::addVertex | ( | size_t | index,
|  | const Vector3 & | offset,
|  | const Vector3 & | normal )

Adds an offset to a vertex and a new normal for this pose.

Parameters

  index | The vertex index
  offset | The position offset for this pose

## ◆ clearVertices()

void Ogre::v1::Pose::clearVertices | ( |  | ) |

Clear all vertices.

Referenced by Ogre::VerticesRemapInfo::performPoseRemap().

## ◆ clone()

Pose * Ogre::v1::Pose::clone | ( |  | ) | const

Clone this pose and create another one configured exactly the same way (only really useful for cloning holders of this class).

References Pose().

## ◆ getIncludesNormals()

bool Ogre::v1::Pose::getIncludesNormals | ( |  | ) | const
| inline

Return whether the pose vertices include normals.

Referenced by Ogre::VerticesRemapInfo::performPoseRemap().

## ◆ getName()

const String & Ogre::v1::Pose::getName | ( |  | ) | const
| inline

Return the name of the pose (may be blank).

## ◆ getNormals()

const NormalsMap & Ogre::v1::Pose::getNormals | ( |  | ) | const
| inline

Gets a const reference to the vertex offsets.

Referenced by Ogre::VerticesRemapInfo::performPoseRemap().

## ◆ getNormalsIterator() [1/2]

NormalsIterator Ogre::v1::Pose::getNormalsIterator | ( |  | ) |

Gets an iterator over all the vertex offsets.

## ◆ getNormalsIterator() [2/2]

ConstNormalsIterator Ogre::v1::Pose::getNormalsIterator | ( |  | ) | const

Gets an iterator over all the vertex offsets.

## ◆ getTarget()

ushort Ogre::v1::Pose::getTarget | ( |  | ) | const
| inline

Return the target geometry index of the pose.

Referenced by Ogre::Lod0Stripifier::StripLod0Vertices().

## ◆ getVertexOffsetIterator() [1/2]

VertexOffsetIterator Ogre::v1::Pose::getVertexOffsetIterator | ( |  | ) |

Gets an iterator over all the vertex offsets.

## ◆ getVertexOffsetIterator() [2/2]

ConstVertexOffsetIterator Ogre::v1::Pose::getVertexOffsetIterator | ( |  | ) | const

Gets an iterator over all the vertex offsets.

## ◆ getVertexOffsets()

const VertexOffsetMap & Ogre::v1::Pose::getVertexOffsets | ( |  | ) | const
| inline

Gets a const reference to the vertex offsets.

Referenced by Ogre::VerticesRemapInfo::performPoseRemap().

## ◆ removeVertex()

void Ogre::v1::Pose::removeVertex | ( | size_t | index | ) |

Remove a vertex offset.

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

- OgrePose.h