📄 orbmath_8h-source.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>OrbMath.h Source File</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3-rc3 --><center><a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="namespacemembers.html">Namespace Members</a> <a class="qindex" href="functions.html">Compound Members</a> </center><hr><h1>OrbMath.h</h1><div class="fragment"><pre>00001 <span class="preprocessor">#ifndef __ORBMATH__HEADER</span>00002 <span class="preprocessor"></span><span class="preprocessor">#define __ORBMATH__HEADER</span>00003 <span class="preprocessor"></span><span class="preprocessor">#include <cmath></span>00004 <span class="preprocessor">#include <limits></span>00005 <span class="preprocessor">#include <memory.h></span>00006 <span class="preprocessor">#include <iostream></span>00007 <span class="preprocessor">#include <OrbPlatForm.h></span>00008 00010 <a name="l00018"></a><a class="code" href="namespaceorb.html">00018</a> <span class="keyword">namespace </span>orb00019 {00020 <span class="comment">// foward declare</span>00021 <span class="keyword">struct </span><a class="code" href="structorb_1_1MATRIX44.html">MATRIX44</a>;00022 <span class="keyword">struct </span><a class="code" href="structorb_1_1MATRIX33.html">MATRIX33</a>;00023 00025 <a name="l00035"></a><a class="code" href="structorb_1_1VECTOR2.html">00035</a> <span class="keyword">struct </span>ORB_EXPORT VECTOR200036 {00038 00042 VECTOR2();00043 00045 00051 VECTOR2(<span class="keywordtype">float</span> _x, <span class="keywordtype">float</span> _y);00052 00054 00057 <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> VECTOR2& other) <span class="keyword">const</span>;00058 00060 00063 <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> VECTOR2& other) <span class="keyword">const</span>;00064 00066 00070 VECTOR2 <a class="code" href="namespaceorb.html#a15">operator+</a>() <span class="keyword">const</span>;00071 00073 00077 VECTOR2 <a class="code" href="namespaceorb.html#a19">operator-</a>() <span class="keyword">const</span>;00078 00080 00083 <span class="keywordtype">float</span> Length() <span class="keyword">const</span>;00084 00086 00090 <span class="keyword">const</span> VECTOR2& Normalize();00091 00093 00096 VECTOR2 GetNormalized() <span class="keyword">const</span>;00097 00098 00099 <span class="keyword">const</span> VECTOR2& operator +=(<span class="keyword">const</span> VECTOR2& other);00100 <span class="keyword">const</span> VECTOR2& operator -=(<span class="keyword">const</span> VECTOR2& other);00101 <span class="keyword">const</span> VECTOR2& operator *=(<span class="keywordtype">float</span> s);00102 <span class="keyword">const</span> VECTOR2& operator /=(<span class="keywordtype">float</span> s);00103 00104 <span class="comment">// data member</span>00105 <a name="l00106"></a><a class="code" href="structorb_1_1VECTOR2.html#m0">00106</a> <span class="keywordtype">float</span> x; <a name="l00107"></a><a class="code" href="structorb_1_1VECTOR2.html#m1">00107</a> <span class="keywordtype">float</span> y; 00108 };00109 00111 <a name="l00121"></a><a class="code" href="structorb_1_1VECTOR3.html">00121</a> <span class="keyword">struct </span>ORB_EXPORT VECTOR300122 {00124 00128 VECTOR3();00129 00131 00138 VECTOR3(<span class="keywordtype">float</span> _x, <span class="keywordtype">float</span> _y, <span class="keywordtype">float</span> _z);00139 00141 00144 <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> VECTOR3& other) <span class="keyword">const</span>;00145 00147 00150 <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> VECTOR3& other) <span class="keyword">const</span>;00151 00153 00158 VECTOR3 <a class="code" href="namespaceorb.html#a15">operator+</a>() <span class="keyword">const</span>;00159 00161 00166 VECTOR3 <a class="code" href="namespaceorb.html#a19">operator-</a>() <span class="keyword">const</span>;00167 00169 00172 <span class="keywordtype">float</span> Length() <span class="keyword">const</span>;00173 00175 00179 <span class="keyword">const</span> VECTOR3& Normalize();00180 00182 00185 VECTOR3 GetNormalized() <span class="keyword">const</span>;00186 00187 <span class="keyword">const</span> VECTOR3& operator +=(<span class="keyword">const</span> VECTOR3& other);00188 <span class="keyword">const</span> VECTOR3& operator -=(<span class="keyword">const</span> VECTOR3& other);00189 <span class="keyword">const</span> VECTOR3& operator *=(<span class="keywordtype">float</span> s);00190 <span class="keyword">const</span> VECTOR3& operator /=(<span class="keywordtype">float</span> s);00191 00192 <span class="comment">// data member</span>00193 <a name="l00194"></a><a class="code" href="structorb_1_1VECTOR3.html#m0">00194</a> <span class="keywordtype">float</span> x; <a name="l00195"></a><a class="code" href="structorb_1_1VECTOR3.html#m1">00195</a> <span class="keywordtype">float</span> y; <a name="l00196"></a><a class="code" href="structorb_1_1VECTOR3.html#m2">00196</a> <span class="keywordtype">float</span> z; 00197 };00198 00200 <a name="l00210"></a><a class="code" href="structorb_1_1VECTOR4.html">00210</a> <span class="keyword">struct </span>ORB_EXPORT VECTOR400211 {00213 00217 VECTOR4();00218 00220 00228 VECTOR4(<span class="keywordtype">float</span> _x, <span class="keywordtype">float</span> _y, <span class="keywordtype">float</span> _z, <span class="keywordtype">float</span> _w);00229 00231 00234 <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> VECTOR4& other) <span class="keyword">const</span>;00235 00237 00240 <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> VECTOR4& other) <span class="keyword">const</span>;00241 00243 00248 VECTOR4 <a class="code" href="namespaceorb.html#a15">operator+</a>() <span class="keyword">const</span>;00249 00251 00256 VECTOR4 <a class="code" href="namespaceorb.html#a19">operator-</a>() <span class="keyword">const</span>;00257 00259 00262 <span class="keywordtype">float</span> Length() <span class="keyword">const</span>;00263 00265 00269 <span class="keyword">const</span> VECTOR4& Normalize();00270 00272 00275 VECTOR4 GetNormalized() <span class="keyword">const</span>;00276 00277 <span class="keyword">const</span> VECTOR4& operator +=(<span class="keyword">const</span> VECTOR4& other);00278 <span class="keyword">const</span> VECTOR4& operator -=(<span class="keyword">const</span> VECTOR4& other);00279 <span class="keyword">const</span> VECTOR4& operator *=(<span class="keywordtype">float</span> s);00280 <span class="keyword">const</span> VECTOR4& operator /=(<span class="keywordtype">float</span> s);00281 00282 00283 <span class="comment">// data member</span><a name="l00284"></a><a class="code" href="structorb_1_1VECTOR4.html#m0">00284</a> <span class="keywordtype">float</span> x; <a name="l00285"></a><a class="code" href="structorb_1_1VECTOR4.html#m1">00285</a> <span class="keywordtype">float</span> y; <a name="l00286"></a><a class="code" href="structorb_1_1VECTOR4.html#m2">00286</a> <span class="keywordtype">float</span> z; <a name="l00287"></a><a class="code" href="structorb_1_1VECTOR4.html#m3">00287</a> <span class="keywordtype">float</span> w; 00288 };00289 00291 <a name="l00301"></a><a class="code" href="structorb_1_1QUATERNION.html">00301</a> <span class="keyword">struct </span>ORB_EXPORT QUATERNION00302 {00304 00308 QUATERNION();00309 00311 00319 QUATERNION(<span class="keywordtype">float</span> _x, <span class="keywordtype">float</span> _y, <span class="keywordtype">float</span> _z, <span class="keywordtype">float</span> _w);00320 00322 00327 <span class="keyword">explicit</span> QUATERNION(<span class="keyword">const</span> <a class="code" href="structorb_1_1MATRIX33.html">MATRIX33</a>& mat);00328 00330 00335 <span class="keyword">explicit</span> QUATERNION(<span class="keyword">const</span> <a class="code" href="structorb_1_1MATRIX44.html">MATRIX44</a>& mat);00336 00338 00341 <span class="keywordtype">bool</span> operator == (<span class="keyword">const</span> QUATERNION& other) <span class="keyword">const</span>;00342 00344 00347 <span class="keywordtype">bool</span> operator != (<span class="keyword">const</span> QUATERNION& other) <span class="keyword">const</span>;00348 00350 00355 QUATERNION <a class="code" href="namespaceorb.html#a15">operator + </a>() <span class="keyword">const</span>;00356 00358 00363 QUATERNION <a class="code" href="namespaceorb.html#a19">operator - </a>() <span class="keyword">const</span>;00364 00366 00370 QUATERNION& operator += (<span class="keyword">const</span> QUATERNION& other);00371 00373 00377 QUATERNION& operator -= (<span class="keyword">const</span> QUATERNION& other);00378 00380 00384 QUATERNION& operator *= (<span class="keyword">const</span> QUATERNION& other);00385 00387 00391 QUATERNION& operator *= (<span class="keywordtype">float</span> f);00392 00394 00398 QUATERNION& operator /= ( <span class="keywordtype">float</span> f );00399 00401 00404 <span class="keywordtype">float</span> Length() <span class="keyword">const</span>;00405 00407 00411 <span class="keywordtype">bool</span> IsIdentity() <span class="keyword">const</span>;00412 00414 00418 <span class="keyword">const</span> QUATERNION& SetIdentity();00419 00421 00425 <span class="keyword">const</span> QUATERNION& Normalize();00426 00428 00431 QUATERNION GetNormalize() <span class="keyword">const</span>;00432 00433 <span class="comment">// data member</span>00434 <a name="l00435"></a><a class="code" href="structorb_1_1QUATERNION.html#m0">00435</a> <span class="keywordtype">float</span> x; <a name="l00436"></a><a class="code" href="structorb_1_1QUATERNION.html#m1">00436</a> <span class="keywordtype">float</span> y; <a name="l00437"></a><a class="code" href="structorb_1_1QUATERNION.html#m2">00437</a> <span class="keywordtype">float</span> z; <a name="l00438"></a><a class="code" href="structorb_1_1QUATERNION.html#m3">00438</a> <span class="keywordtype">float</span> w; 00439 };00440 00442 <a name="l00452"></a><a class="code" href="structorb_1_1MATRIX33.html">00452</a> <span class="keyword">struct </span>ORB_EXPORT MATRIX3300453 {00455 00459 MATRIX33();00460 00462
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -