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