1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" />
7    <style type="text/css"><!--
8      span.static_style
9      {
10        font-size			: 8pt;
11        color				: white;
12        font-weight			: bold;
13        background			: #44f;
14        border-left			: solid 1px #aaf;
15        border-top			: solid 1px #aaf;
16        border-right		: solid 1px #00c;
17        border-bottom		: solid 1px #00c;
18        padding-left		: 2px;
19        padding-right		: 2px;
20      }
21      span.virtual_style
22      {
23        font-size			 : 8pt;
24        color				 : white;
25        font-weight			: bold;
26        background			: #0a0;
27        border-left			: solid 1px #0f0;
28        border-top			: solid 1px #0f0;
29        border-right		: solid 1px #060;
30        border-bottom		: solid 1px #060;
31        padding-left		: 2px;
32        padding-right		: 2px;
33      }
34      span.protected_style
35      {
36        font-size			 : 8pt;
37        color				 : white;
38        font-weight			: bold;
39        background			: #444;
40        border-left			: solid 1px #ccc;
41        border-top			: solid 1px #ccc;
42        border-right		: solid 1px #222;
43        border-bottom		: solid 1px #222;
44        padding-left		: 2px;
45        padding-right		: 2px;
46      }
47        --></style>
48    <title>nw::gfx::CalculatedTransform</title>
49  </head>
50  <body>
51    <h1><CODE><a href="../../../nw/Overview.html">nw</a>::<a href="../../../nw/gfx/Overview.html">gfx</a>::CalculatedTransform</CODE> Class</h1>
52    <h2>Syntax</h2>
53    <div class="section">
54      <pre class="definition">class CalculatedTransform</pre>
55    </div>
56    <h2>Description</h2>
57    <div class="section">
58      <p>Class representing pre-calculated transforms.</p>
59    </div>
60    <a name="enum" id="enum">
61      <h2>Enumerated Types</h2>
62      <div class="section">
63        <table class="members">
64          <tr>
65            <th class="category" colspan="3">Constant Definitions</th>
66          </tr>
67          <tr>
68            <td width="100"> </td>
69            <th>
70              <a href="../../../nw/gfx/CalculatedTransform/Flag.html">Flag</a>
71            </th>
72            <td>Definitions of bit flags that store additional info about transforms.</td>
73          </tr> </table>
74      </div>
75    </a> <a name="function" id="function">
76      <h2>Member Functions</h2>
77      <div class="section">
78        <table class="members">
79          <tr>
80            <th class="category" colspan="3">Constant Definitions</th>
81          </tr>
82          <tr>
83            <td width="100">
84              <span class="static_style" title="static">S</span> </td>
85            <th>
86              <a href="../../../nw/gfx/CalculatedTransform/Identity.html"><CODE>Identity</CODE></a>
87            </th>
88            <td>Gets an identity matrix.</td>
89          </tr>
90          <tr>
91            <th class="category" colspan="3">Create</th>
92          </tr>
93          <tr>
94            <td width="100">  </td>
95            <th>
96              <a href="../../../nw/gfx/CalculatedTransform/CalculatedTransform.html"><CODE>CalculatedTransform</CODE></a>
97            </th>
98            <td>Constructor.</td>
99          </tr>
100          <tr>
101            <td width="100">  </td>
102            <th>
103              <a href="../../../nw/gfx/CalculatedTransform/Setup.html">Setup</a>
104            </th>
105            <td>Sets up a pre-calculated transform from a resource bone.</td>
106          </tr>
107          <tr>
108            <th class="category" colspan="3">Set/Get</th>
109          </tr>
110          <tr>
111            <td width="100">  </td>
112            <th>
113              <a href="../../../nw/gfx/CalculatedTransform/DirectTransformMatrix.html">DirectTransformMatrix</a>
114            </th>
115            <td>Gets a matrix representing coordinate transformation. Always set the Dirty flag when update has been performed.</td>
116          </tr>
117          <tr>
118            <td width="100">  </td>
119            <th>
120              <a href="../../../nw/gfx/CalculatedTransform/TransformMatrix.html">TransformMatrix</a>
121            </th>
122            <td>Gets a matrix representing coordinate transformation. Parent scale is applied without applying its own scale.</td>
123          </tr>
124          <tr>
125            <td width="100">  </td>
126            <th>
127              <a href="../../../nw/gfx/CalculatedTransform/SetTransformMatrix.html"><CODE>SetTransformMatrix</CODE></a>
128            </th>
129            <td>Sets a matrix indicating a coordinate transformation. Sets the <CODE>Dirty</CODE> flag.</td>
130          </tr>
131          <tr>
132            <td width="100">  </td>
133            <th>
134              <a href="../../../nw/gfx/CalculatedTransform/SetRotateMatrix.html"><CODE>SetRotateMatrix</CODE></a>
135            </th>
136            <td>Gets the rotation matrix. Sets the <CODE>Dirty</CODE> flag.</td>
137          </tr>
138          <tr>
139            <td width="100">  </td>
140            <th>
141              <a href="../../../nw/gfx/CalculatedTransform/DirectScale.html">DirectScale</a>
142            </th>
143            <td>Gets the scaling transformation vector. Always set the Dirty flag when update has been performed.</td>
144          </tr>
145          <tr>
146            <td width="100">  </td>
147            <th>
148              <a href="../../../nw/gfx/CalculatedTransform/Scale.html">Scale</a>
149            </th>
150            <td>Gets the scaling transformation vector.</td>
151          </tr>
152          <tr>
153            <td width="100">  </td>
154            <th>
155              <a href="../../../nw/gfx/CalculatedTransform/SetScale.html">SetScale</a>
156            </th>
157            <td>Sets the scaling transformation vector. Sets the <CODE>Dirty</CODE> flag.</td>
158          </tr>
159          <tr>
160            <td width="100">  </td>
161            <th>
162              <a href="../../../nw/gfx/CalculatedTransform/SetTranslate.html">SetTranslate</a>
163            </th>
164            <td>Sets the translation. Sets the <CODE>Dirty</CODE> flag.</td>
165          </tr>
166          <tr>
167            <td width="100">  </td>
168            <th>
169              <a href="../../../nw/gfx/CalculatedTransform/GetTranslate.html"><CODE>GetTranslate</CODE></a>
170            </th>
171            <td>Gets the translation.</td>
172          </tr>
173          <tr>
174            <td width="100">  </td>
175            <th>
176              <a href="../../../nw/gfx/CalculatedTransform/SetRotateXYZ.html"><CODE>SetRotateXYZ</CODE></a>
177            </th>
178            <td>Configures rotation. Sets the <CODE>Dirty</CODE> flag.</td>
179          </tr>
180          <tr>
181            <td width="100">  </td>
182            <th>
183              <a href="../../../nw/gfx/CalculatedTransform/SetRotateAndTranslate.html"><CODE>SetRotateAndTranslate</CODE></a>
184            </th>
185            <td>Sets the rotation and translation. The rotation order is XYZ. Sets the <CODE>Dirty</CODE> flag.</td>
186          </tr>
187          <tr>
188            <td width="100">  </td>
189            <th>
190              <a href="../../../nw/gfx/CalculatedTransform/SetTransform.html"><CODE>SetTransform</CODE></a>
191            </th>
192            <td>Sets a transform. Sets the <CODE>Dirty</CODE> flag.</td>
193          </tr>
194          <tr>
195            <th class="category" colspan="3">Utility Functions</th>
196          </tr>
197          <tr>
198            <td width="100">  </td>
199            <th>
200              <a href="../../../nw/gfx/CalculatedTransform/NormalizeRotateMatrix.html"><CODE>NormalizeRotateMatrix</CODE></a>
201            </th>
202            <td>Orthonormalizes the rotation component of a matrix. Sets the <CODE>Dirty</CODE> flag.</td>
203          </tr>
204          <tr>
205            <td width="100">  </td>
206            <th>
207              <a href="../../../nw/gfx/CalculatedTransform/RotateMatrixToQuaternion.html"><CODE>RotateMatrixToQuaternion</CODE></a>
208            </th>
209            <td>Converts the rotation component of a matrix to a quaternion. The <CODE>00</CODE>, <CODE>01</CODE>, <CODE>02</CODE>, and <CODE>10</CODE> components of the matrix are stored in <CODE>x</CODE>, <CODE>y</CODE>, <CODE>z</CODE>, and <CODE>w</CODE> respectively. Sets the <CODE>Dirty</CODE> flag.</td>
210          </tr>
211          <tr>
212            <td width="100">  </td>
213            <th>
214              <a href="../../../nw/gfx/CalculatedTransform/QuaternionToRotateMatrix.html"><CODE>QuaternionToRotateMatrix</CODE></a>
215            </th>
216            <td>Converts a quaternion to the rotation component of a matrix. The <CODE>00</CODE>, <CODE>01</CODE>, <CODE>02</CODE>, and <CODE>10</CODE> components of the matrix are considered to be <CODE>x</CODE>, <CODE>y</CODE>, <CODE>z</CODE>, and <CODE>w</CODE> respectively. Sets the <CODE>Dirty</CODE> flag.</td>
217          </tr>
218          <tr>
219            <th class="category" colspan="3">Getting/Setting Flags</th>
220          </tr>
221          <tr>
222            <td width="100">  </td>
223            <th>
224              <a href="../../../nw/gfx/CalculatedTransform/GetFlags.html"><CODE>GetFlags</CODE></a>
225            </th>
226            <td>Gets flag values directly.</td>
227          </tr>
228          <tr>
229            <td width="100">  </td>
230            <th>
231              <a href="../../../nw/gfx/CalculatedTransform/SetFlags.html"><CODE>SetFlags</CODE></a>
232            </th>
233            <td>Sets flag values directly.</td>
234          </tr>
235          <tr>
236            <td width="100">  </td>
237            <th>
238              <a href="../../../nw/gfx/CalculatedTransform/RestoreFlags.html">RestoreFlags</a>
239            </th>
240            <td>
241        </td>
242          </tr>
243          <tr>
244            <td width="100">  </td>
245            <th>
246              <a href="../../../nw/gfx/CalculatedTransform/IsEnabledFlags.html"><CODE>IsEnabledFlags</CODE></a>
247            </th>
248            <td>Determines whether the given flags are enabled.</td>
249          </tr>
250          <tr>
251            <td width="100">  </td>
252            <th>
253              <a href="../../../nw/gfx/CalculatedTransform/IsEnabledFlagsOr.html"><CODE>IsEnabledFlagsOr</CODE></a>
254            </th>
255            <td>Determines whether any of a given set of flags are enabled.</td>
256          </tr>
257          <tr>
258            <td width="100">  </td>
259            <th>
260              <a href="../../../nw/gfx/CalculatedTransform/EnableFlags.html"><CODE>EnableFlags</CODE></a>
261            </th>
262            <td>Enables the specified flags.</td>
263          </tr>
264          <tr>
265            <td width="100">  </td>
266            <th>
267              <a href="../../../nw/gfx/CalculatedTransform/DisableFlags.html"><CODE>DisableFlags</CODE></a>
268            </th>
269            <td>Disables the specified flags.</td>
270          </tr>
271          <tr>
272            <td width="100">  </td>
273            <th>
274              <a href="../../../nw/gfx/CalculatedTransform/ResetFlags.html"><CODE>ResetFlags</CODE></a>
275            </th>
276            <td>Invalidates all flags.</td>
277          </tr>
278          <tr>
279            <td width="100">  </td>
280            <th>
281              <a href="../../../nw/gfx/CalculatedTransform/ResetTransformFlags.html">ResetTransformFlags</a>
282            </th>
283            <td>Invalidates all transform flags.</td>
284          </tr>
285          <tr>
286            <td width="100">  </td>
287            <th>
288              <a href="../../../nw/gfx/CalculatedTransform/UpdateFlagsStrictly.html">UpdateFlagsStrictly</a>
289            </th>
290            <td>Updates all flags based on transform information.</td>
291          </tr>
292          <tr>
293            <td width="100">  </td>
294            <th>
295              <a href="../../../nw/gfx/CalculatedTransform/UpdateFlags.html"><CODE>UpdateFlags</CODE></a>
296            </th>
297            <td>Updates all flags based on transform information.</td>
298          </tr>
299          <tr>
300            <td width="100">  </td>
301            <th>
302              <a href="../../../nw/gfx/CalculatedTransform/UpdateScaleFlags.html"><CODE>UpdateScaleFlags</CODE></a>
303            </th>
304            <td>Updates only the flags among the transform info that deal with scaling.</td>
305          </tr>
306          <tr>
307            <td width="100">  </td>
308            <th>
309              <a href="../../../nw/gfx/CalculatedTransform/UpdateRotateFlagsStrictly.html">UpdateRotateFlagsStrictly</a>
310            </th>
311            <td>Updates only the flags among the transform info that deal with rotation.</td>
312          </tr>
313          <tr>
314            <td width="100">  </td>
315            <th>
316              <a href="../../../nw/gfx/CalculatedTransform/UpdateRotateFlags.html">UpdateRotateFlags</a>
317            </th>
318            <td>Updates only the flags among the transform info that deal with rotation.</td>
319          </tr>
320          <tr>
321            <td width="100">  </td>
322            <th>
323              <a href="../../../nw/gfx/CalculatedTransform/UpdateTranslateFlags.html"><CODE>UpdateTranslateFlags</CODE></a>
324            </th>
325            <td>Updates only the flags among the transform info that deal with translation.</td>
326          </tr>
327          <tr>
328            <td width="100">  </td>
329            <th>
330              <a href="../../../nw/gfx/CalculatedTransform/UpdateCompositeFlags.html"><CODE>UpdateCompositeFlags</CODE></a>
331            </th>
332            <td>Updates the overall matrix flags from the flags for each component.</td>
333          </tr> </table>
334      </div>
335    </a>
336  <hr><p>CONFIDENTIAL</p></body>
337</html>
338