source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1Animation.html @ 657

Revision 657, 58.8 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::Animation class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::Animation Class Reference</h1>An animation sequence. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>&gt;</code>
14<p>
15<a href="classOgre_1_1Animation-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
16<tr><td></td></tr>
17<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
18<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map&lt; unsigned <br>
19short, <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a></td></tr>
20
21<tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="classOgre_1_1ConstMapIterator.html">ConstMapIterator</a>&lt;<br>
22 <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw1">TrackIterator</a></td></tr>
23
24<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> { <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6Ogre_1_1Animationw2">IM_LINEAR</a>,
25<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6Ogre_1_1Animationw3">IM_SPLINE</a>
26 }</td></tr>
27
28<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The types of animation interpolation available.  <a href="#Ogre_1_1Animationw6">More...</a><br><br></td></tr>
29<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> { <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7Ogre_1_1Animationw4">RIM_LINEAR</a>,
30<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7Ogre_1_1Animationw5">RIM_SPHERICAL</a>
31 }</td></tr>
32
33<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The types of rotational interpolation available.  <a href="#Ogre_1_1Animationw7">More...</a><br><br></td></tr>
34<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
35<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa0">Animation</a> (const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;name, <a class="el" href="namespaceOgre.html#a420">Real</a> length)</td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">You should not use this constructor directly, use the parent object such as <a class="el" href="classOgre_1_1Skeleton.html">Skeleton</a> instead.  <a href="#Ogre_1_1Animationa0"></a><br><br></td></tr>
38<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa1">~Animation</a> ()</td></tr>
39
40<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa2">getName</a> (void) const </td></tr>
41
42<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the name of this animation.  <a href="#Ogre_1_1Animationa2"></a><br><br></td></tr>
43<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa3">getLength</a> (void) const </td></tr>
44
45<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the total length of the animation.  <a href="#Ogre_1_1Animationa3"></a><br><br></td></tr>
46<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa4">createTrack</a> (unsigned short handle)</td></tr>
47
48<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates an <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>.  <a href="#Ogre_1_1Animationa4"></a><br><br></td></tr>
49<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa5">createTrack</a> (unsigned short handle, <a class="el" href="classOgre_1_1Node.html">Node</a> *node)</td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> automatically associated with a <a class="el" href="classOgre_1_1Node.html">Node</a>.  <a href="#Ogre_1_1Animationa5"></a><br><br></td></tr>
52<tr><td class="memItemLeft" nowrap align=right valign=top>unsigned short&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa6">getNumTracks</a> (void) const </td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the number of <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> objects which make up this animation.  <a href="#Ogre_1_1Animationa6"></a><br><br></td></tr>
55<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa7">getTrack</a> (unsigned short handle) const </td></tr>
56
57<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a track by it's handle.  <a href="#Ogre_1_1Animationa7"></a><br><br></td></tr>
58<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa8">destroyTrack</a> (unsigned short handle)</td></tr>
59
60<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroys the track with the given handle.  <a href="#Ogre_1_1Animationa8"></a><br><br></td></tr>
61<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa9">destroyAllTracks</a> (void)</td></tr>
62
63<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes and destroys all tracks making up this animation.  <a href="#Ogre_1_1Animationa9"></a><br><br></td></tr>
64<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa10">apply</a> (<a class="el" href="namespaceOgre.html#a420">Real</a> timePos, <a class="el" href="namespaceOgre.html#a420">Real</a> weight=1.0, bool accumulate=false, <a class="el" href="namespaceOgre.html#a420">Real</a> scale=1.0f)</td></tr>
65
66<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Applies an animation given a specific time point and weight.  <a href="#Ogre_1_1Animationa10"></a><br><br></td></tr>
67<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa11">apply</a> (<a class="el" href="classOgre_1_1Skeleton.html">Skeleton</a> *skeleton, <a class="el" href="namespaceOgre.html#a420">Real</a> timePos, <a class="el" href="namespaceOgre.html#a420">Real</a> weight=1.0, bool accumulate=false, <a class="el" href="namespaceOgre.html#a420">Real</a> scale=1.0f)</td></tr>
68
69<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Applies an animation given a specific time point and weight to a given skeleton.  <a href="#Ogre_1_1Animationa11"></a><br><br></td></tr>
70<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa12">setInterpolationMode</a> (<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> im)</td></tr>
71
72<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tells the animation how to interpolate between keyframes.  <a href="#Ogre_1_1Animationa12"></a><br><br></td></tr>
73<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa13">getInterpolationMode</a> (void) const </td></tr>
74
75<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the current interpolation mode of this animation.  <a href="#Ogre_1_1Animationa13"></a><br><br></td></tr>
76<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa14">setRotationInterpolationMode</a> (<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> im)</td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tells the animation how to interpolate rotations.  <a href="#Ogre_1_1Animationa14"></a><br><br></td></tr>
79<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa15">getRotationInterpolationMode</a> (void) const </td></tr>
80
81<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the current rotation interpolation mode of this animation.  <a href="#Ogre_1_1Animationa15"></a><br><br></td></tr>
82<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa16">_getTrackList</a> (void) const </td></tr>
83
84<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fast access to NON-UPDATEABLE track list.  <a href="#Ogre_1_1Animationa16"></a><br><br></td></tr>
85<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1ConstMapIterator.html">TrackIterator</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa17">getTrackIterator</a> (void) const </td></tr>
86
87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get non-updateable iterator over tracks.  <a href="#Ogre_1_1Animationa17"></a><br><br></td></tr>
88<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationa18">optimise</a> (void)</td></tr>
89
90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Optimise an animation by removing unnecessary tracks and keyframes.  <a href="#Ogre_1_1Animationa18"></a><br><br></td></tr>
91<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr>
92<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animatione0">setDefaultInterpolationMode</a> (<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> im)</td></tr>
93
94<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the default animation interpolation mode.  <a href="#Ogre_1_1Animatione0"></a><br><br></td></tr>
95<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animatione1">getDefaultInterpolationMode</a> (void)</td></tr>
96
97<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the default interpolation mode for all animations.  <a href="#Ogre_1_1Animatione1"></a><br><br></td></tr>
98<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animatione2">setDefaultRotationInterpolationMode</a> (<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> im)</td></tr>
99
100<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the default rotation interpolation mode.  <a href="#Ogre_1_1Animatione2"></a><br><br></td></tr>
101<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animatione3">getDefaultRotationInterpolationMode</a> (void)</td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the default rotation interpolation mode for all animations.  <a href="#Ogre_1_1Animatione3"></a><br><br></td></tr>
104<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
105<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp0">mTrackList</a></td></tr>
106
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tracks, indexed by handle.  <a href="#Ogre_1_1Animationp0"></a><br><br></td></tr>
108<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a426">String</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp1">mName</a></td></tr>
109
110<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp2">mLength</a></td></tr>
111
112<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp3">mInterpolationMode</a></td></tr>
113
114<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp4">mRotationInterpolationMode</a></td></tr>
115
116<tr><td colspan=2><br><h2>Static Protected Attributes</h2></td></tr>
117<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationt0">msDefaultInterpolationMode</a></td></tr>
118
119<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationt1">msDefaultRotationInterpolationMode</a></td></tr>
120
121</table>
122<hr><a name="_details"></a><h2>Detailed Description</h2>
123An animation sequence.
124<p>
125<dl compact><dt><b>Remarks:</b></dt><dd>This class defines the interface for a sequence of animation, whether that be animation of a mesh, a path along a spline, or possibly more than one type of animation in one. An animation is made up of many 'tracks', which are the more specific types of animation. </dd></dl>
126<dl compact><dt><b></b></dt><dd>You should not create these animations directly. They will be created via a parent object which owns the animation, e.g. <a class="el" href="classOgre_1_1Skeleton.html">Skeleton</a>. </dd></dl>
127
128<p>
129
130<p>
131Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00045">45</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.<hr><h2>Member Typedef Documentation</h2>
132<a class="anchor" name="Ogre_1_1Animationw1" doxytag="Ogre::Animation::TrackIterator" ></a><p>
133<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
134  <tr>
135    <td class="mdRow">
136      <table cellpadding="0" cellspacing="0" border="0">
137        <tr>
138          <td class="md" nowrap valign="top"> typedef <a class="el" href="classOgre_1_1ConstMapIterator.html">ConstMapIterator</a>&lt;<a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a>&gt; <a class="el" href="classOgre_1_1ConstMapIterator.html">Ogre::Animation::TrackIterator</a>
139      </table>
140    </td>
141  </tr>
142</table>
143<table cellspacing=5 cellpadding=0 border=0>
144  <tr>
145    <td>
146      &nbsp;
147    </td>
148    <td>
149
150<p>
151
152<p>
153Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00199">199</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.
154<p>
155Referenced by <a class="el" href="OgreAnimation_8h-source.html#l00205">getTrackIterator()</a>.    </td>
156  </tr>
157</table>
158<a class="anchor" name="Ogre_1_1Animationw0" doxytag="Ogre::Animation::TrackList" ></a><p>
159<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
160  <tr>
161    <td class="mdRow">
162      <table cellpadding="0" cellspacing="0" border="0">
163        <tr>
164          <td class="md" nowrap valign="top"> typedef std::map&lt;unsigned short, <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>*&gt; <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">Ogre::Animation::TrackList</a>
165      </table>
166    </td>
167  </tr>
168</table>
169<table cellspacing=5 cellpadding=0 border=0>
170  <tr>
171    <td>
172      &nbsp;
173    </td>
174    <td>
175
176<p>
177
178<p>
179Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00198">198</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
180  </tr>
181</table>
182<hr><h2>Member Enumeration Documentation</h2>
183<a class="anchor" name="Ogre_1_1Animationw6" doxytag="Ogre::Animation::InterpolationMode" ></a><p>
184<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
185  <tr>
186    <td class="mdRow">
187      <table cellpadding="0" cellspacing="0" border="0">
188        <tr>
189          <td class="md" nowrap valign="top"> enum <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">Ogre::Animation::InterpolationMode</a>
190      </table>
191    </td>
192  </tr>
193</table>
194<table cellspacing=5 cellpadding=0 border=0>
195  <tr>
196    <td>
197      &nbsp;
198    </td>
199    <td>
200
201<p>
202The types of animation interpolation available.
203<p>
204<dl compact><dt><b>Enumeration values: </b></dt><dd>
205<table border=0 cellspacing=2 cellpadding=0>
206<tr><td valign=top><em><a class="anchor" name="Ogre_1_1Animationw6Ogre_1_1Animationw2" doxytag="IM_LINEAR" ></a>IM_LINEAR</em>&nbsp;</td><td>
207Values are interpolated along straight lines. </td></tr>
208<tr><td valign=top><em><a class="anchor" name="Ogre_1_1Animationw6Ogre_1_1Animationw3" doxytag="IM_SPLINE" ></a>IM_SPLINE</em>&nbsp;</td><td>
209Values are interpolated along a spline, resulting in smoother changes in direction. </td></tr>
210</table>
211</dl>
212
213<p>
214Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00050">50</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
215  </tr>
216</table>
217<a class="anchor" name="Ogre_1_1Animationw7" doxytag="Ogre::Animation::RotationInterpolationMode" ></a><p>
218<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
219  <tr>
220    <td class="mdRow">
221      <table cellpadding="0" cellspacing="0" border="0">
222        <tr>
223          <td class="md" nowrap valign="top"> enum <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">Ogre::Animation::RotationInterpolationMode</a>
224      </table>
225    </td>
226  </tr>
227</table>
228<table cellspacing=5 cellpadding=0 border=0>
229  <tr>
230    <td>
231      &nbsp;
232    </td>
233    <td>
234
235<p>
236The types of rotational interpolation available.
237<p>
238<dl compact><dt><b>Enumeration values: </b></dt><dd>
239<table border=0 cellspacing=2 cellpadding=0>
240<tr><td valign=top><em><a class="anchor" name="Ogre_1_1Animationw7Ogre_1_1Animationw4" doxytag="RIM_LINEAR" ></a>RIM_LINEAR</em>&nbsp;</td><td>
241Values are interpolated linearly.
242<p>
243This is faster but does not necessarily give a completely accurate result. </td></tr>
244<tr><td valign=top><em><a class="anchor" name="Ogre_1_1Animationw7Ogre_1_1Animationw5" doxytag="RIM_SPHERICAL" ></a>RIM_SPHERICAL</em>&nbsp;</td><td>
245Values are interpolated spherically.
246<p>
247This is more accurate but has a higher cost. </td></tr>
248</table>
249</dl>
250
251<p>
252Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00059">59</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
253  </tr>
254</table>
255<hr><h2>Constructor &amp; Destructor Documentation</h2>
256<a class="anchor" name="Ogre_1_1Animationa0" doxytag="Ogre::Animation::Animation" ></a><p>
257<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
258  <tr>
259    <td class="mdRow">
260      <table cellpadding="0" cellspacing="0" border="0">
261        <tr>
262          <td class="md" nowrap valign="top"> Ogre::Animation::Animation </td>
263          <td class="md" valign="top">(&nbsp;</td>
264          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a426">String</a> &amp;&nbsp;</td>
265          <td class="mdname" nowrap> <em>name</em>, </td>
266        </tr>
267        <tr>
268          <td class="md" nowrap align="right"></td>
269          <td></td>
270          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
271          <td class="mdname" nowrap> <em>length</em></td>
272        </tr>
273        <tr>
274          <td></td>
275          <td class="md">)&nbsp;</td>
276          <td class="md" colspan="2"></td>
277        </tr>
278
279      </table>
280    </td>
281  </tr>
282</table>
283<table cellspacing=5 cellpadding=0 border=0>
284  <tr>
285    <td>
286      &nbsp;
287    </td>
288    <td>
289
290<p>
291You should not use this constructor directly, use the parent object such as <a class="el" href="classOgre_1_1Skeleton.html">Skeleton</a> instead.
292<p>
293<dl compact><dt><b>Parameters:</b></dt><dd>
294  <table border="0" cellspacing="2" cellpadding="0">
295    <tr><td valign=top><em>name</em>&nbsp;</td><td>The name of the animation, should be unique within it's parent (e.g. <a class="el" href="classOgre_1_1Skeleton.html">Skeleton</a>) </td></tr>
296    <tr><td valign=top><em>length</em>&nbsp;</td><td>The length of the animation in seconds. </td></tr>
297  </table>
298</dl>
299    </td>
300  </tr>
301</table>
302<a class="anchor" name="Ogre_1_1Animationa1" doxytag="Ogre::Animation::~Animation" ></a><p>
303<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
304  <tr>
305    <td class="mdRow">
306      <table cellpadding="0" cellspacing="0" border="0">
307        <tr>
308          <td class="md" nowrap valign="top"> virtual Ogre::Animation::~<a class="el" href="classOgre_1_1Animation.html">Animation</a> </td>
309          <td class="md" valign="top">(&nbsp;</td>
310          <td class="mdname1" valign="top" nowrap>          </td>
311          <td class="md" valign="top">&nbsp;)&nbsp;</td>
312          <td class="md" nowrap><code> [virtual]</code></td>
313        </tr>
314
315      </table>
316    </td>
317  </tr>
318</table>
319<table cellspacing=5 cellpadding=0 border=0>
320  <tr>
321    <td>
322      &nbsp;
323    </td>
324    <td>
325
326<p>
327    </td>
328  </tr>
329</table>
330<hr><h2>Member Function Documentation</h2>
331<a class="anchor" name="Ogre_1_1Animationa16" doxytag="Ogre::Animation::_getTrackList" ></a><p>
332<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
333  <tr>
334    <td class="mdRow">
335      <table cellpadding="0" cellspacing="0" border="0">
336        <tr>
337          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a>&amp; Ogre::Animation::_getTrackList </td>
338          <td class="md" valign="top">(&nbsp;</td>
339          <td class="md" nowrap valign="top">void&nbsp;</td>
340          <td class="mdname1" valign="top" nowrap>          </td>
341          <td class="md" valign="top">&nbsp;)&nbsp;</td>
342          <td class="md" nowrap> const</td>
343        </tr>
344
345      </table>
346    </td>
347  </tr>
348</table>
349<table cellspacing=5 cellpadding=0 border=0>
350  <tr>
351    <td>
352      &nbsp;
353    </td>
354    <td>
355
356<p>
357Fast access to NON-UPDATEABLE track list.
358<p>
359    </td>
360  </tr>
361</table>
362<a class="anchor" name="Ogre_1_1Animationa11" doxytag="Ogre::Animation::apply" ></a><p>
363<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
364  <tr>
365    <td class="mdRow">
366      <table cellpadding="0" cellspacing="0" border="0">
367        <tr>
368          <td class="md" nowrap valign="top"> void Ogre::Animation::apply </td>
369          <td class="md" valign="top">(&nbsp;</td>
370          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Skeleton.html">Skeleton</a> *&nbsp;</td>
371          <td class="mdname" nowrap> <em>skeleton</em>, </td>
372        </tr>
373        <tr>
374          <td class="md" nowrap align="right"></td>
375          <td></td>
376          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
377          <td class="mdname" nowrap> <em>timePos</em>, </td>
378        </tr>
379        <tr>
380          <td class="md" nowrap align="right"></td>
381          <td></td>
382          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
383          <td class="mdname" nowrap> <em>weight</em> = 1.0, </td>
384        </tr>
385        <tr>
386          <td class="md" nowrap align="right"></td>
387          <td></td>
388          <td class="md" nowrap>bool&nbsp;</td>
389          <td class="mdname" nowrap> <em>accumulate</em> = false, </td>
390        </tr>
391        <tr>
392          <td class="md" nowrap align="right"></td>
393          <td></td>
394          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
395          <td class="mdname" nowrap> <em>scale</em> = 1.0f</td>
396        </tr>
397        <tr>
398          <td></td>
399          <td class="md">)&nbsp;</td>
400          <td class="md" colspan="2"></td>
401        </tr>
402
403      </table>
404    </td>
405  </tr>
406</table>
407<table cellspacing=5 cellpadding=0 border=0>
408  <tr>
409    <td>
410      &nbsp;
411    </td>
412    <td>
413
414<p>
415Applies an animation given a specific time point and weight to a given skeleton.
416<p>
417<dl compact><dt><b>Remarks:</b></dt><dd>Where you have associated animation tracks with <a class="el" href="classOgre_1_1Node.html">Node</a> objects, you can eaily apply an animation to those nodes by calling this method. </dd></dl>
418<dl compact><dt><b>Parameters:</b></dt><dd>
419  <table border="0" cellspacing="2" cellpadding="0">
420    <tr><td valign=top><em>timePos</em>&nbsp;</td><td>The time position in the animation to apply. </td></tr>
421    <tr><td valign=top><em>weight</em>&nbsp;</td><td>The influence to give to this track, 1.0 for full influence, less to blend with other animations. </td></tr>
422    <tr><td valign=top><em>scale</em>&nbsp;</td><td>The scale to apply to translations and scalings, useful for adapting an animation to a different size target. </td></tr>
423  </table>
424</dl>
425    </td>
426  </tr>
427</table>
428<a class="anchor" name="Ogre_1_1Animationa10" doxytag="Ogre::Animation::apply" ></a><p>
429<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
430  <tr>
431    <td class="mdRow">
432      <table cellpadding="0" cellspacing="0" border="0">
433        <tr>
434          <td class="md" nowrap valign="top"> void Ogre::Animation::apply </td>
435          <td class="md" valign="top">(&nbsp;</td>
436          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
437          <td class="mdname" nowrap> <em>timePos</em>, </td>
438        </tr>
439        <tr>
440          <td class="md" nowrap align="right"></td>
441          <td></td>
442          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
443          <td class="mdname" nowrap> <em>weight</em> = 1.0, </td>
444        </tr>
445        <tr>
446          <td class="md" nowrap align="right"></td>
447          <td></td>
448          <td class="md" nowrap>bool&nbsp;</td>
449          <td class="mdname" nowrap> <em>accumulate</em> = false, </td>
450        </tr>
451        <tr>
452          <td class="md" nowrap align="right"></td>
453          <td></td>
454          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
455          <td class="mdname" nowrap> <em>scale</em> = 1.0f</td>
456        </tr>
457        <tr>
458          <td></td>
459          <td class="md">)&nbsp;</td>
460          <td class="md" colspan="2"></td>
461        </tr>
462
463      </table>
464    </td>
465  </tr>
466</table>
467<table cellspacing=5 cellpadding=0 border=0>
468  <tr>
469    <td>
470      &nbsp;
471    </td>
472    <td>
473
474<p>
475Applies an animation given a specific time point and weight.
476<p>
477<dl compact><dt><b>Remarks:</b></dt><dd>Where you have associated animation tracks with <a class="el" href="classOgre_1_1Node.html">Node</a> objects, you can eaily apply an animation to those nodes by calling this method. </dd></dl>
478<dl compact><dt><b>Parameters:</b></dt><dd>
479  <table border="0" cellspacing="2" cellpadding="0">
480    <tr><td valign=top><em>timePos</em>&nbsp;</td><td>The time position in the animation to apply. </td></tr>
481    <tr><td valign=top><em>weight</em>&nbsp;</td><td>The influence to give to this track, 1.0 for full influence, less to blend with other animations. </td></tr>
482    <tr><td valign=top><em>scale</em>&nbsp;</td><td>The scale to apply to translations and scalings, useful for adapting an animation to a different size target. </td></tr>
483  </table>
484</dl>
485    </td>
486  </tr>
487</table>
488<a class="anchor" name="Ogre_1_1Animationa5" doxytag="Ogre::Animation::createTrack" ></a><p>
489<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
490  <tr>
491    <td class="mdRow">
492      <table cellpadding="0" cellspacing="0" border="0">
493        <tr>
494          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>* Ogre::Animation::createTrack </td>
495          <td class="md" valign="top">(&nbsp;</td>
496          <td class="md" nowrap valign="top">unsigned short&nbsp;</td>
497          <td class="mdname" nowrap> <em>handle</em>, </td>
498        </tr>
499        <tr>
500          <td class="md" nowrap align="right"></td>
501          <td></td>
502          <td class="md" nowrap><a class="el" href="classOgre_1_1Node.html">Node</a> *&nbsp;</td>
503          <td class="mdname" nowrap> <em>node</em></td>
504        </tr>
505        <tr>
506          <td></td>
507          <td class="md">)&nbsp;</td>
508          <td class="md" colspan="2"></td>
509        </tr>
510
511      </table>
512    </td>
513  </tr>
514</table>
515<table cellspacing=5 cellpadding=0 border=0>
516  <tr>
517    <td>
518      &nbsp;
519    </td>
520    <td>
521
522<p>
523Creates a new <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> automatically associated with a <a class="el" href="classOgre_1_1Node.html">Node</a>.
524<p>
525<dl compact><dt><b>Remarks:</b></dt><dd>This method creates a standard <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>, but also associates it with a target <a class="el" href="classOgre_1_1Node.html">Node</a> which will receive all keyframe effects. </dd></dl>
526<dl compact><dt><b>Parameters:</b></dt><dd>
527  <table border="0" cellspacing="2" cellpadding="0">
528    <tr><td valign=top><em>handle</em>&nbsp;</td><td>Numeric handle to give the track, used for accessing the track later. Must be unique within this <a class="el" href="classOgre_1_1Animation.html">Animation</a>. </td></tr>
529    <tr><td valign=top><em>node</em>&nbsp;</td><td>A pointer to the <a class="el" href="classOgre_1_1Node.html">Node</a> object which will be affected by this track </td></tr>
530  </table>
531</dl>
532    </td>
533  </tr>
534</table>
535<a class="anchor" name="Ogre_1_1Animationa4" doxytag="Ogre::Animation::createTrack" ></a><p>
536<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
537  <tr>
538    <td class="mdRow">
539      <table cellpadding="0" cellspacing="0" border="0">
540        <tr>
541          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>* Ogre::Animation::createTrack </td>
542          <td class="md" valign="top">(&nbsp;</td>
543          <td class="md" nowrap valign="top">unsigned short&nbsp;</td>
544          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
545          <td class="md" valign="top">&nbsp;)&nbsp;</td>
546          <td class="md" nowrap></td>
547        </tr>
548
549      </table>
550    </td>
551  </tr>
552</table>
553<table cellspacing=5 cellpadding=0 border=0>
554  <tr>
555    <td>
556      &nbsp;
557    </td>
558    <td>
559
560<p>
561Creates an <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>.
562<p>
563<dl compact><dt><b>Parameters:</b></dt><dd>
564  <table border="0" cellspacing="2" cellpadding="0">
565    <tr><td valign=top><em>handle</em>&nbsp;</td><td>Numeric handle to give the track, used for accessing the track later. Must be unique within this <a class="el" href="classOgre_1_1Animation.html">Animation</a>. </td></tr>
566  </table>
567</dl>
568    </td>
569  </tr>
570</table>
571<a class="anchor" name="Ogre_1_1Animationa9" doxytag="Ogre::Animation::destroyAllTracks" ></a><p>
572<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
573  <tr>
574    <td class="mdRow">
575      <table cellpadding="0" cellspacing="0" border="0">
576        <tr>
577          <td class="md" nowrap valign="top"> void Ogre::Animation::destroyAllTracks </td>
578          <td class="md" valign="top">(&nbsp;</td>
579          <td class="md" nowrap valign="top">void&nbsp;</td>
580          <td class="mdname1" valign="top" nowrap>          </td>
581          <td class="md" valign="top">&nbsp;)&nbsp;</td>
582          <td class="md" nowrap></td>
583        </tr>
584
585      </table>
586    </td>
587  </tr>
588</table>
589<table cellspacing=5 cellpadding=0 border=0>
590  <tr>
591    <td>
592      &nbsp;
593    </td>
594    <td>
595
596<p>
597Removes and destroys all tracks making up this animation.
598<p>
599    </td>
600  </tr>
601</table>
602<a class="anchor" name="Ogre_1_1Animationa8" doxytag="Ogre::Animation::destroyTrack" ></a><p>
603<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
604  <tr>
605    <td class="mdRow">
606      <table cellpadding="0" cellspacing="0" border="0">
607        <tr>
608          <td class="md" nowrap valign="top"> void Ogre::Animation::destroyTrack </td>
609          <td class="md" valign="top">(&nbsp;</td>
610          <td class="md" nowrap valign="top">unsigned short&nbsp;</td>
611          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
612          <td class="md" valign="top">&nbsp;)&nbsp;</td>
613          <td class="md" nowrap></td>
614        </tr>
615
616      </table>
617    </td>
618  </tr>
619</table>
620<table cellspacing=5 cellpadding=0 border=0>
621  <tr>
622    <td>
623      &nbsp;
624    </td>
625    <td>
626
627<p>
628Destroys the track with the given handle.
629<p>
630    </td>
631  </tr>
632</table>
633<a class="anchor" name="Ogre_1_1Animatione1" doxytag="Ogre::Animation::getDefaultInterpolationMode" ></a><p>
634<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
635  <tr>
636    <td class="mdRow">
637      <table cellpadding="0" cellspacing="0" border="0">
638        <tr>
639          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> Ogre::Animation::getDefaultInterpolationMode </td>
640          <td class="md" valign="top">(&nbsp;</td>
641          <td class="md" nowrap valign="top">void&nbsp;</td>
642          <td class="mdname1" valign="top" nowrap>          </td>
643          <td class="md" valign="top">&nbsp;)&nbsp;</td>
644          <td class="md" nowrap><code> [static]</code></td>
645        </tr>
646
647      </table>
648    </td>
649  </tr>
650</table>
651<table cellspacing=5 cellpadding=0 border=0>
652  <tr>
653    <td>
654      &nbsp;
655    </td>
656    <td>
657
658<p>
659Gets the default interpolation mode for all animations.
660<p>
661    </td>
662  </tr>
663</table>
664<a class="anchor" name="Ogre_1_1Animatione3" doxytag="Ogre::Animation::getDefaultRotationInterpolationMode" ></a><p>
665<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
666  <tr>
667    <td class="mdRow">
668      <table cellpadding="0" cellspacing="0" border="0">
669        <tr>
670          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> Ogre::Animation::getDefaultRotationInterpolationMode </td>
671          <td class="md" valign="top">(&nbsp;</td>
672          <td class="md" nowrap valign="top">void&nbsp;</td>
673          <td class="mdname1" valign="top" nowrap>          </td>
674          <td class="md" valign="top">&nbsp;)&nbsp;</td>
675          <td class="md" nowrap><code> [static]</code></td>
676        </tr>
677
678      </table>
679    </td>
680  </tr>
681</table>
682<table cellspacing=5 cellpadding=0 border=0>
683  <tr>
684    <td>
685      &nbsp;
686    </td>
687    <td>
688
689<p>
690Gets the default rotation interpolation mode for all animations.
691<p>
692    </td>
693  </tr>
694</table>
695<a class="anchor" name="Ogre_1_1Animationa13" doxytag="Ogre::Animation::getInterpolationMode" ></a><p>
696<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
697  <tr>
698    <td class="mdRow">
699      <table cellpadding="0" cellspacing="0" border="0">
700        <tr>
701          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> Ogre::Animation::getInterpolationMode </td>
702          <td class="md" valign="top">(&nbsp;</td>
703          <td class="md" nowrap valign="top">void&nbsp;</td>
704          <td class="mdname1" valign="top" nowrap>          </td>
705          <td class="md" valign="top">&nbsp;)&nbsp;</td>
706          <td class="md" nowrap> const</td>
707        </tr>
708
709      </table>
710    </td>
711  </tr>
712</table>
713<table cellspacing=5 cellpadding=0 border=0>
714  <tr>
715    <td>
716      &nbsp;
717    </td>
718    <td>
719
720<p>
721Gets the current interpolation mode of this animation.
722<p>
723<dl compact><dt><b>Remarks:</b></dt><dd>See setInterpolationMode for more info. </dd></dl>
724    </td>
725  </tr>
726</table>
727<a class="anchor" name="Ogre_1_1Animationa3" doxytag="Ogre::Animation::getLength" ></a><p>
728<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
729  <tr>
730    <td class="mdRow">
731      <table cellpadding="0" cellspacing="0" border="0">
732        <tr>
733          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> Ogre::Animation::getLength </td>
734          <td class="md" valign="top">(&nbsp;</td>
735          <td class="md" nowrap valign="top">void&nbsp;</td>
736          <td class="mdname1" valign="top" nowrap>          </td>
737          <td class="md" valign="top">&nbsp;)&nbsp;</td>
738          <td class="md" nowrap> const</td>
739        </tr>
740
741      </table>
742    </td>
743  </tr>
744</table>
745<table cellspacing=5 cellpadding=0 border=0>
746  <tr>
747    <td>
748      &nbsp;
749    </td>
750    <td>
751
752<p>
753Gets the total length of the animation.
754<p>
755    </td>
756  </tr>
757</table>
758<a class="anchor" name="Ogre_1_1Animationa2" doxytag="Ogre::Animation::getName" ></a><p>
759<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
760  <tr>
761    <td class="mdRow">
762      <table cellpadding="0" cellspacing="0" border="0">
763        <tr>
764          <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a426">String</a>&amp; Ogre::Animation::getName </td>
765          <td class="md" valign="top">(&nbsp;</td>
766          <td class="md" nowrap valign="top">void&nbsp;</td>
767          <td class="mdname1" valign="top" nowrap>          </td>
768          <td class="md" valign="top">&nbsp;)&nbsp;</td>
769          <td class="md" nowrap> const</td>
770        </tr>
771
772      </table>
773    </td>
774  </tr>
775</table>
776<table cellspacing=5 cellpadding=0 border=0>
777  <tr>
778    <td>
779      &nbsp;
780    </td>
781    <td>
782
783<p>
784Gets the name of this animation.
785<p>
786    </td>
787  </tr>
788</table>
789<a class="anchor" name="Ogre_1_1Animationa6" doxytag="Ogre::Animation::getNumTracks" ></a><p>
790<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
791  <tr>
792    <td class="mdRow">
793      <table cellpadding="0" cellspacing="0" border="0">
794        <tr>
795          <td class="md" nowrap valign="top"> unsigned short Ogre::Animation::getNumTracks </td>
796          <td class="md" valign="top">(&nbsp;</td>
797          <td class="md" nowrap valign="top">void&nbsp;</td>
798          <td class="mdname1" valign="top" nowrap>          </td>
799          <td class="md" valign="top">&nbsp;)&nbsp;</td>
800          <td class="md" nowrap> const</td>
801        </tr>
802
803      </table>
804    </td>
805  </tr>
806</table>
807<table cellspacing=5 cellpadding=0 border=0>
808  <tr>
809    <td>
810      &nbsp;
811    </td>
812    <td>
813
814<p>
815Gets the number of <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a> objects which make up this animation.
816<p>
817    </td>
818  </tr>
819</table>
820<a class="anchor" name="Ogre_1_1Animationa15" doxytag="Ogre::Animation::getRotationInterpolationMode" ></a><p>
821<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
822  <tr>
823    <td class="mdRow">
824      <table cellpadding="0" cellspacing="0" border="0">
825        <tr>
826          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> Ogre::Animation::getRotationInterpolationMode </td>
827          <td class="md" valign="top">(&nbsp;</td>
828          <td class="md" nowrap valign="top">void&nbsp;</td>
829          <td class="mdname1" valign="top" nowrap>          </td>
830          <td class="md" valign="top">&nbsp;)&nbsp;</td>
831          <td class="md" nowrap> const</td>
832        </tr>
833
834      </table>
835    </td>
836  </tr>
837</table>
838<table cellspacing=5 cellpadding=0 border=0>
839  <tr>
840    <td>
841      &nbsp;
842    </td>
843    <td>
844
845<p>
846Gets the current rotation interpolation mode of this animation.
847<p>
848<dl compact><dt><b>Remarks:</b></dt><dd>See setRotationInterpolationMode for more info. </dd></dl>
849    </td>
850  </tr>
851</table>
852<a class="anchor" name="Ogre_1_1Animationa7" doxytag="Ogre::Animation::getTrack" ></a><p>
853<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
854  <tr>
855    <td class="mdRow">
856      <table cellpadding="0" cellspacing="0" border="0">
857        <tr>
858          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1AnimationTrack.html">AnimationTrack</a>* Ogre::Animation::getTrack </td>
859          <td class="md" valign="top">(&nbsp;</td>
860          <td class="md" nowrap valign="top">unsigned short&nbsp;</td>
861          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
862          <td class="md" valign="top">&nbsp;)&nbsp;</td>
863          <td class="md" nowrap> const</td>
864        </tr>
865
866      </table>
867    </td>
868  </tr>
869</table>
870<table cellspacing=5 cellpadding=0 border=0>
871  <tr>
872    <td>
873      &nbsp;
874    </td>
875    <td>
876
877<p>
878Gets a track by it's handle.
879<p>
880    </td>
881  </tr>
882</table>
883<a class="anchor" name="Ogre_1_1Animationa17" doxytag="Ogre::Animation::getTrackIterator" ></a><p>
884<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
885  <tr>
886    <td class="mdRow">
887      <table cellpadding="0" cellspacing="0" border="0">
888        <tr>
889          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1ConstMapIterator.html">TrackIterator</a> Ogre::Animation::getTrackIterator </td>
890          <td class="md" valign="top">(&nbsp;</td>
891          <td class="md" nowrap valign="top">void&nbsp;</td>
892          <td class="mdname1" valign="top" nowrap>          </td>
893          <td class="md" valign="top">&nbsp;)&nbsp;</td>
894          <td class="md" nowrap> const</td>
895        </tr>
896
897      </table>
898    </td>
899  </tr>
900</table>
901<table cellspacing=5 cellpadding=0 border=0>
902  <tr>
903    <td>
904      &nbsp;
905    </td>
906    <td>
907
908<p>
909Get non-updateable iterator over tracks.
910<p>
911
912<p>
913Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00205">205</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.
914<p>
915References <a class="el" href="OgreAnimation_8h-source.html#l00199">TrackIterator</a>.    </td>
916  </tr>
917</table>
918<a class="anchor" name="Ogre_1_1Animationa18" doxytag="Ogre::Animation::optimise" ></a><p>
919<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
920  <tr>
921    <td class="mdRow">
922      <table cellpadding="0" cellspacing="0" border="0">
923        <tr>
924          <td class="md" nowrap valign="top"> void Ogre::Animation::optimise </td>
925          <td class="md" valign="top">(&nbsp;</td>
926          <td class="md" nowrap valign="top">void&nbsp;</td>
927          <td class="mdname1" valign="top" nowrap>          </td>
928          <td class="md" valign="top">&nbsp;)&nbsp;</td>
929          <td class="md" nowrap></td>
930        </tr>
931
932      </table>
933    </td>
934  </tr>
935</table>
936<table cellspacing=5 cellpadding=0 border=0>
937  <tr>
938    <td>
939      &nbsp;
940    </td>
941    <td>
942
943<p>
944Optimise an animation by removing unnecessary tracks and keyframes.
945<p>
946<dl compact><dt><b>Remarks:</b></dt><dd>When you export an animation, it is possible that certain tracks have been keyfamed but actually don't include anything useful - the keyframes include no transformation. These tracks can be completely eliminated from the animation and thus speed up the animation. In addition, if several keyframes in a row have the same value, then they are just adding overhead and can be removed.</dd></dl>
947    </td>
948  </tr>
949</table>
950<a class="anchor" name="Ogre_1_1Animatione0" doxytag="Ogre::Animation::setDefaultInterpolationMode" ></a><p>
951<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
952  <tr>
953    <td class="mdRow">
954      <table cellpadding="0" cellspacing="0" border="0">
955        <tr>
956          <td class="md" nowrap valign="top"> void Ogre::Animation::setDefaultInterpolationMode </td>
957          <td class="md" valign="top">(&nbsp;</td>
958          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a>&nbsp;</td>
959          <td class="mdname1" valign="top" nowrap> <em>im</em>          </td>
960          <td class="md" valign="top">&nbsp;)&nbsp;</td>
961          <td class="md" nowrap><code> [static]</code></td>
962        </tr>
963
964      </table>
965    </td>
966  </tr>
967</table>
968<table cellspacing=5 cellpadding=0 border=0>
969  <tr>
970    <td>
971      &nbsp;
972    </td>
973    <td>
974
975<p>
976Sets the default animation interpolation mode.
977<p>
978<dl compact><dt><b>Remarks:</b></dt><dd>Every animation created after this option is set will have the new interpolation mode specified. You can also change the mode per animation by calling the setInterpolationMode method on the instance in question. </dd></dl>
979    </td>
980  </tr>
981</table>
982<a class="anchor" name="Ogre_1_1Animatione2" doxytag="Ogre::Animation::setDefaultRotationInterpolationMode" ></a><p>
983<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
984  <tr>
985    <td class="mdRow">
986      <table cellpadding="0" cellspacing="0" border="0">
987        <tr>
988          <td class="md" nowrap valign="top"> void Ogre::Animation::setDefaultRotationInterpolationMode </td>
989          <td class="md" valign="top">(&nbsp;</td>
990          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a>&nbsp;</td>
991          <td class="mdname1" valign="top" nowrap> <em>im</em>          </td>
992          <td class="md" valign="top">&nbsp;)&nbsp;</td>
993          <td class="md" nowrap><code> [static]</code></td>
994        </tr>
995
996      </table>
997    </td>
998  </tr>
999</table>
1000<table cellspacing=5 cellpadding=0 border=0>
1001  <tr>
1002    <td>
1003      &nbsp;
1004    </td>
1005    <td>
1006
1007<p>
1008Sets the default rotation interpolation mode.
1009<p>
1010<dl compact><dt><b>Remarks:</b></dt><dd>Every animation created after this option is set will have the new interpolation mode specified. You can also change the mode per animation by calling the setInterpolationMode method on the instance in question. </dd></dl>
1011    </td>
1012  </tr>
1013</table>
1014<a class="anchor" name="Ogre_1_1Animationa12" doxytag="Ogre::Animation::setInterpolationMode" ></a><p>
1015<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1016  <tr>
1017    <td class="mdRow">
1018      <table cellpadding="0" cellspacing="0" border="0">
1019        <tr>
1020          <td class="md" nowrap valign="top"> void Ogre::Animation::setInterpolationMode </td>
1021          <td class="md" valign="top">(&nbsp;</td>
1022          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a>&nbsp;</td>
1023          <td class="mdname1" valign="top" nowrap> <em>im</em>          </td>
1024          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1025          <td class="md" nowrap></td>
1026        </tr>
1027
1028      </table>
1029    </td>
1030  </tr>
1031</table>
1032<table cellspacing=5 cellpadding=0 border=0>
1033  <tr>
1034    <td>
1035      &nbsp;
1036    </td>
1037    <td>
1038
1039<p>
1040Tells the animation how to interpolate between keyframes.
1041<p>
1042<dl compact><dt><b>Remarks:</b></dt><dd>By default, animations normally interpolate linearly between keyframes. This is fast, but when animations include quick changes in direction it can look a little unnatural because directions change instantly at keyframes. An alternative is to tell the animation to interpolate along a spline, which is more expensive in terms of calculation time, but looks smoother because major changes in direction are distributed around the keyframes rather than just at the keyframe. </dd></dl>
1043<dl compact><dt><b></b></dt><dd>You can also change the default animation behaviour by calling <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animatione0">Animation::setDefaultInterpolationMode</a>. </dd></dl>
1044    </td>
1045  </tr>
1046</table>
1047<a class="anchor" name="Ogre_1_1Animationa14" doxytag="Ogre::Animation::setRotationInterpolationMode" ></a><p>
1048<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1049  <tr>
1050    <td class="mdRow">
1051      <table cellpadding="0" cellspacing="0" border="0">
1052        <tr>
1053          <td class="md" nowrap valign="top"> void Ogre::Animation::setRotationInterpolationMode </td>
1054          <td class="md" valign="top">(&nbsp;</td>
1055          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a>&nbsp;</td>
1056          <td class="mdname1" valign="top" nowrap> <em>im</em>          </td>
1057          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1058          <td class="md" nowrap></td>
1059        </tr>
1060
1061      </table>
1062    </td>
1063  </tr>
1064</table>
1065<table cellspacing=5 cellpadding=0 border=0>
1066  <tr>
1067    <td>
1068      &nbsp;
1069    </td>
1070    <td>
1071
1072<p>
1073Tells the animation how to interpolate rotations.
1074<p>
1075<dl compact><dt><b>Remarks:</b></dt><dd>By default, animations interpolate lieanrly between rotations. This is fast but not necessarily completely accurate. If you want more accurate interpolation, use spherical interpolation, but be aware that it will incur a higher cost. </dd></dl>
1076<dl compact><dt><b></b></dt><dd>You can also change the default rotation behaviour by calling <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animatione2">Animation::setDefaultRotationInterpolationMode</a>. </dd></dl>
1077    </td>
1078  </tr>
1079</table>
1080<hr><h2>Member Data Documentation</h2>
1081<a class="anchor" name="Ogre_1_1Animationp3" doxytag="Ogre::Animation::mInterpolationMode" ></a><p>
1082<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1083  <tr>
1084    <td class="mdRow">
1085      <table cellpadding="0" cellspacing="0" border="0">
1086        <tr>
1087          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp3">Ogre::Animation::mInterpolationMode</a><code> [protected]</code>
1088      </table>
1089    </td>
1090  </tr>
1091</table>
1092<table cellspacing=5 cellpadding=0 border=0>
1093  <tr>
1094    <td>
1095      &nbsp;
1096    </td>
1097    <td>
1098
1099<p>
1100
1101<p>
1102Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00228">228</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1103  </tr>
1104</table>
1105<a class="anchor" name="Ogre_1_1Animationp2" doxytag="Ogre::Animation::mLength" ></a><p>
1106<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1107  <tr>
1108    <td class="mdRow">
1109      <table cellpadding="0" cellspacing="0" border="0">
1110        <tr>
1111          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp2">Ogre::Animation::mLength</a><code> [protected]</code>
1112      </table>
1113    </td>
1114  </tr>
1115</table>
1116<table cellspacing=5 cellpadding=0 border=0>
1117  <tr>
1118    <td>
1119      &nbsp;
1120    </td>
1121    <td>
1122
1123<p>
1124
1125<p>
1126Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00226">226</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1127  </tr>
1128</table>
1129<a class="anchor" name="Ogre_1_1Animationp1" doxytag="Ogre::Animation::mName" ></a><p>
1130<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1131  <tr>
1132    <td class="mdRow">
1133      <table cellpadding="0" cellspacing="0" border="0">
1134        <tr>
1135          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a426">String</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp1">Ogre::Animation::mName</a><code> [protected]</code>
1136      </table>
1137    </td>
1138  </tr>
1139</table>
1140<table cellspacing=5 cellpadding=0 border=0>
1141  <tr>
1142    <td>
1143      &nbsp;
1144    </td>
1145    <td>
1146
1147<p>
1148
1149<p>
1150Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00224">224</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1151  </tr>
1152</table>
1153<a class="anchor" name="Ogre_1_1Animationp4" doxytag="Ogre::Animation::mRotationInterpolationMode" ></a><p>
1154<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1155  <tr>
1156    <td class="mdRow">
1157      <table cellpadding="0" cellspacing="0" border="0">
1158        <tr>
1159          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp4">Ogre::Animation::mRotationInterpolationMode</a><code> [protected]</code>
1160      </table>
1161    </td>
1162  </tr>
1163</table>
1164<table cellspacing=5 cellpadding=0 border=0>
1165  <tr>
1166    <td>
1167      &nbsp;
1168    </td>
1169    <td>
1170
1171<p>
1172
1173<p>
1174Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00229">229</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1175  </tr>
1176</table>
1177<a class="anchor" name="Ogre_1_1Animationt0" doxytag="Ogre::Animation::msDefaultInterpolationMode" ></a><p>
1178<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1179  <tr>
1180    <td class="mdRow">
1181      <table cellpadding="0" cellspacing="0" border="0">
1182        <tr>
1183          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw6">InterpolationMode</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationt0">Ogre::Animation::msDefaultInterpolationMode</a><code> [static, protected]</code>
1184      </table>
1185    </td>
1186  </tr>
1187</table>
1188<table cellspacing=5 cellpadding=0 border=0>
1189  <tr>
1190    <td>
1191      &nbsp;
1192    </td>
1193    <td>
1194
1195<p>
1196
1197<p>
1198Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00231">231</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1199  </tr>
1200</table>
1201<a class="anchor" name="Ogre_1_1Animationt1" doxytag="Ogre::Animation::msDefaultRotationInterpolationMode" ></a><p>
1202<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1203  <tr>
1204    <td class="mdRow">
1205      <table cellpadding="0" cellspacing="0" border="0">
1206        <tr>
1207          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw7">RotationInterpolationMode</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationt1">Ogre::Animation::msDefaultRotationInterpolationMode</a><code> [static, protected]</code>
1208      </table>
1209    </td>
1210  </tr>
1211</table>
1212<table cellspacing=5 cellpadding=0 border=0>
1213  <tr>
1214    <td>
1215      &nbsp;
1216    </td>
1217    <td>
1218
1219<p>
1220
1221<p>
1222Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00232">232</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1223  </tr>
1224</table>
1225<a class="anchor" name="Ogre_1_1Animationp0" doxytag="Ogre::Animation::mTrackList" ></a><p>
1226<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1227  <tr>
1228    <td class="mdRow">
1229      <table cellpadding="0" cellspacing="0" border="0">
1230        <tr>
1231          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationw0">TrackList</a> <a class="el" href="classOgre_1_1Animation.html#Ogre_1_1Animationp0">Ogre::Animation::mTrackList</a><code> [protected]</code>
1232      </table>
1233    </td>
1234  </tr>
1235</table>
1236<table cellspacing=5 cellpadding=0 border=0>
1237  <tr>
1238    <td>
1239      &nbsp;
1240    </td>
1241    <td>
1242
1243<p>
1244Tracks, indexed by handle.
1245<p>
1246
1247<p>
1248Definition at line <a class="el" href="OgreAnimation_8h-source.html#l00223">223</a> of file <a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a>.    </td>
1249  </tr>
1250</table>
1251<hr>The documentation for this class was generated from the following file:<ul>
1252<li><a class="el" href="OgreAnimation_8h-source.html">OgreAnimation.h</a></ul>
1253<hr>
1254<p>
1255Copyright &copy; 2000-2005 by The OGRE Team<br />
1256<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
1257This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
1258                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
1259                <Work rdf:about="">
1260                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
1261        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
1262                </Work>
1263                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
1264
1265Last modified Sun Feb 12 13:00:05 2006
1266</p>
1267</body>
1268</html>
Note: See TracBrowser for help on using the repository browser.