aboutsummaryrefslogtreecommitdiff
path: root/docs/source_docs/files/bt_vector3_8h_source.html
blob: e6bc02ed997d6a59d86bf8571dccd8c6a040a8c6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<html>
	<head>
		<title>sdk/extensions/authoring/source/VHACD/inc/btVector3.h Source File</title>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
		<LINK HREF="NVIDIA.css" REL="stylesheet" TYPE="text/css">
	</head>
	<body bgcolor="#FFFFFF">
		<div id="header">
			<hr class="first">
			<img alt="" src="blast_logo.png">
			<br>
			<center>
				<a class="qindex" href="main.html">Main Page</a> &nbsp; 
				<!-- <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; //-->
				<a class="qindex" href="annotated.html">Class List</a> &nbsp; 
				<a class="qindex" href="functions.html">Class Members</a> &nbsp;  
			</center>
			<hr class="second">
		</div>
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('bt_vector3_8h_source.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">btVector3.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="bt_vector3_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">Copyright (c) 2003-2006 Gino van den Bergen / Erwin Coumans  http://continuousphysics.com/Bullet/</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">This software is provided &#39;as-is&#39;, without any express or implied warranty.</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">In no event will the authors be held liable for any damages arising from the use of this software.</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">Permission is granted to anyone to use this software for any purpose, </span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">including commercial applications, and to alter it and redistribute it freely, </span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">subject to the following restrictions:</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">3. This notice may not be removed or altered from any source distribution.</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">*/</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#ifndef BT_VECTOR3_H</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#define BT_VECTOR3_H</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="bt_min_max_8h.html">btMinMax.h</a>&quot;</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="bt_scalar_8h.html">btScalar.h</a>&quot;</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#ifdef BT_USE_DOUBLE_PRECISION</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#define btVector3Data btVector3DoubleData</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#define btVector3DataName &quot;btVector3DoubleData&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ad116b75e5135551c1335437e47fd8a3f">   25</a></span>&#160;<span class="preprocessor">#define btVector3Data btVector3FloatData</span></div><div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a22c3af642cd6ee73d125e310c6318cce">   26</a></span>&#160;<span class="preprocessor">#define btVector3DataName &quot;btVector3FloatData&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#endif //BT_USE_DOUBLE_PRECISION</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<a class="code" href="bt_scalar_8h.html#a38c30fdd0ea2558373a1b6e41c77d9d2">ATTRIBUTE_ALIGNED16</a>(<span class="keyword">class</span>)</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">   35</a></span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#if defined(__SPU__) &amp;&amp; defined(__CELLOS_LV2__)</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> m_floats[4];</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> vec_float4&amp; get128()<span class="keyword"> const</span></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        <span class="keywordflow">return</span> *((<span class="keyword">const</span> vec_float4*)&amp;m_floats[0]);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    }</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#else //__CELLOS_LV2__ __SPU__</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#ifdef BT_USE_SSE // _WIN32</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keyword">union </span>{</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        __m128 mVec128;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> m_floats[4];</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    };</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> __m128 get128()<span class="keyword"> const</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <span class="keywordflow">return</span> mVec128;</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;    }</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> set128(__m128 v128)</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        mVec128 = v128;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    }</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> m_floats[4];</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#endif //__CELLOS_LV2__ __SPU__</span></div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a3fae008fb245faf41f926174868c1323">   68</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>() {}</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aba0837be927ae5152dcdb38bc5945bd5">   75</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>)</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    {</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;        m_floats[0] = <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;        m_floats[1] = <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        m_floats[2] = <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        m_floats[3] = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.);</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    }</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a7a750b3fe432249ef0c50e95fb61c69f">   85</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#a7a750b3fe432249ef0c50e95fb61c69f">operator+=</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    {</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        m_floats[0] += v.m_floats[0];</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        m_floats[1] += v.m_floats[1];</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        m_floats[2] += v.m_floats[2];</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    }</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#acad072d73dc2f6f9370157ec1715c8c1">   96</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#acad072d73dc2f6f9370157ec1715c8c1">operator-=</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    {</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        m_floats[0] -= v.m_floats[0];</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        m_floats[1] -= v.m_floats[1];</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        m_floats[2] -= v.m_floats[2];</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    }</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ad213bcd7fce55a2f9d310114a2e157eb">  105</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#ad213bcd7fce55a2f9d310114a2e157eb">operator*=</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; s)</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    {</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;        m_floats[0] *= s;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        m_floats[1] *= s;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        m_floats[2] *= s;</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    }</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a40204accad7fbbe9fb169d235637a4c8">  115</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#a40204accad7fbbe9fb169d235637a4c8">operator/=</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; s)</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    {</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <a class="code" href="bt_scalar_8h.html#a90bc8c8b8f79211b2b7f0356c4cd804f">btFullAssert</a>(s != <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.0));</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        <span class="keywordflow">return</span> * <span class="keyword">this</span> *= <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(1.0) / s;</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    }</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a4a1a82b60c07a33807d1e43d2d6aede6">  123</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a4a1a82b60c07a33807d1e43d2d6aede6">dot</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)<span class="keyword"> const</span></div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <span class="keywordflow">return</span> m_floats[0] * v.m_floats[0] + m_floats[1] * v.m_floats[1] + m_floats[2] * v.m_floats[2];</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    }</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a10bc669d0cd2db9595affab30e5532cf">  129</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a10bc669d0cd2db9595affab30e5532cf">length2</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a4a1a82b60c07a33807d1e43d2d6aede6">dot</a>(*<span class="keyword">this</span>);</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    }</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#afc8f7d2e5d8f2ed1eab977727a6b3501">  135</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#afc8f7d2e5d8f2ed1eab977727a6b3501">length</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_scalar_8h.html#a6b200a8d26a49406ca13329be909ec10">btSqrt</a>(<a class="code" href="bt_vector3_8h.html#a10bc669d0cd2db9595affab30e5532cf">length2</a>());</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    }</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#ad41fea09dcee2db07c7a8a128749d42e">distance2</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v) <span class="keyword">const</span>;</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#ae6b71ab121d96689e1ce5f8903f56258">distance</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v) <span class="keyword">const</span>;</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ab4aa784dd3b3c09f887133f5c252b1a7">  148</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#ab4aa784dd3b3c09f887133f5c252b1a7">safeNormalize</a>()</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    {</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> absVec = this-&gt;<a class="code" href="bt_vector3_8h.html#af56fb04fff6e6830e534274517c8fa23">absolute</a>();</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;        int32_t maxIndex = absVec.maxAxis();</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <span class="keywordflow">if</span> (absVec[maxIndex] &gt; 0) {</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;            *<span class="keyword">this</span> /= absVec[maxIndex];</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;            <span class="keywordflow">return</span> * <span class="keyword">this</span> /= <a class="code" href="bt_vector3_8h.html#afc8f7d2e5d8f2ed1eab977727a6b3501">length</a>();</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        }</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;        <a class="code" href="bt_vector3_8h.html#a479473af6a5018f5386e719427ee7848">setValue</a>(1, 0, 0);</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    }</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a3083f1242193e3cac601afe9610cc4e5">  162</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#a3083f1242193e3cac601afe9610cc4e5">normalize</a>()</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    {</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        <span class="keywordflow">return</span> * <span class="keyword">this</span> /= <a class="code" href="bt_vector3_8h.html#afc8f7d2e5d8f2ed1eab977727a6b3501">length</a>();</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    }</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#aa372be4e51e83a8100f279e98468230e">normalized</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#a2834558f3d04abfb5b40fd7c23ebe8d3">rotate</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; wAxis, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a545c49277de85f6dbc05ec06319eee1b">angle</a>) <span class="keyword">const</span>;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a545c49277de85f6dbc05ec06319eee1b">  177</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a545c49277de85f6dbc05ec06319eee1b">angle</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)<span class="keyword"> const</span></div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> s = <a class="code" href="bt_scalar_8h.html#a6b200a8d26a49406ca13329be909ec10">btSqrt</a>(<a class="code" href="bt_vector3_8h.html#a10bc669d0cd2db9595affab30e5532cf">length2</a>() * v.length2());</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        <a class="code" href="bt_scalar_8h.html#a90bc8c8b8f79211b2b7f0356c4cd804f">btFullAssert</a>(s != <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.0));</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_scalar_8h.html#a004c41de4028b1437d1aafbaa0769cd5">btAcos</a>(<a class="code" href="bt_vector3_8h.html#a4a1a82b60c07a33807d1e43d2d6aede6">dot</a>(v) / s);</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    }</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#af56fb04fff6e6830e534274517c8fa23">  184</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#af56fb04fff6e6830e534274517c8fa23">absolute</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[0]),</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[1]),</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[2]));</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    }</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aa0d71a601765b3ef7dc8c950c6ff762e">  193</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#aa0d71a601765b3ef7dc8c950c6ff762e">cross</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)<span class="keyword"> const</span></div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;            m_floats[1] * v.m_floats[2] - m_floats[2] * v.m_floats[1],</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;            m_floats[2] * v.m_floats[0] - m_floats[0] * v.m_floats[2],</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;            m_floats[0] * v.m_floats[1] - m_floats[1] * v.m_floats[0]);</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    }</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a66e2fdfbabb28c8e9c4565f398e197fe">  201</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a66e2fdfbabb28c8e9c4565f398e197fe">triple</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)<span class="keyword"> const</span></div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="keywordflow">return</span> m_floats[0] * (v1.m_floats[1] * v2.m_floats[2] - v1.m_floats[2] * v2.m_floats[1]) + m_floats[1] * (v1.m_floats[2] * v2.m_floats[0] - v1.m_floats[0] * v2.m_floats[2]) + m_floats[2] * (v1.m_floats[0] * v2.m_floats[1] - v1.m_floats[1] * v2.m_floats[0]);</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    }</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a1413171f4206f8873704d0b306059ab1">  208</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="bt_vector3_8h.html#a1413171f4206f8873704d0b306059ab1">minAxis</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;        <span class="keywordflow">return</span> m_floats[0] &lt; m_floats[1] ? (m_floats[0] &lt; m_floats[2] ? 0 : 2) : (m_floats[1] &lt; m_floats[2] ? 1 : 2);</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    }</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aaa98d1e52f7d623dc642a73f8a47dbad">  215</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="bt_vector3_8h.html#aaa98d1e52f7d623dc642a73f8a47dbad">maxAxis</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;        <span class="keywordflow">return</span> m_floats[0] &lt; m_floats[1] ? (m_floats[1] &lt; m_floats[2] ? 2 : 1) : (m_floats[0] &lt; m_floats[2] ? 2 : 0);</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    }</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a85c2b2da56faf3927c22358361fce1ef">  220</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="bt_vector3_8h.html#a85c2b2da56faf3927c22358361fce1ef">furthestAxis</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#af56fb04fff6e6830e534274517c8fa23">absolute</a>().minAxis();</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    }</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a3f3aadabc51f8182c778f0db663be185">  225</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="bt_vector3_8h.html#a3f3aadabc51f8182c778f0db663be185">closestAxis</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#af56fb04fff6e6830e534274517c8fa23">absolute</a>().maxAxis();</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    }</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a8fc6367a9ad19bfd2ac50e0c06c70dc6">  230</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a8fc6367a9ad19bfd2ac50e0c06c70dc6">setInterpolate3</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v0, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> rt)</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    {</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> s = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(1.0) - rt;</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;        m_floats[0] = s * v0.m_floats[0] + rt * v1.m_floats[0];</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        m_floats[1] = s * v0.m_floats[1] + rt * v1.m_floats[1];</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        m_floats[2] = s * v0.m_floats[2] + rt * v1.m_floats[2];</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        <span class="comment">//don&#39;t do the unused w component</span></div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        <span class="comment">//      m_co[3] = s * v0[3] + rt * v1[3];</span></div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    }</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a75b314f15ed597121fe298bd66816160">  243</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#a75b314f15ed597121fe298bd66816160">lerp</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; t)<span class="keyword"> const</span></div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(m_floats[0] + (v.m_floats[0] - m_floats[0]) * t,</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;            m_floats[1] + (v.m_floats[1] - m_floats[1]) * t,</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;            m_floats[2] + (v.m_floats[2] - m_floats[2]) * t);</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    }</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a6fec5d8daca950e867926bd29780ee72">  252</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; <a class="code" href="bt_vector3_8h.html#ad213bcd7fce55a2f9d310114a2e157eb">operator*=</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    {</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        m_floats[0] *= v.m_floats[0];</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        m_floats[1] *= v.m_floats[1];</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        m_floats[2] *= v.m_floats[2];</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    }</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aac64bbd7b5d79a37aaf8508838733456">  261</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#aac64bbd7b5d79a37aaf8508838733456">getX</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[0]; }</div><div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ada12e2c003a5b608ce5d9d384a7e0402">  263</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#ada12e2c003a5b608ce5d9d384a7e0402">getY</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[1]; }</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a334ddc392fb6e14b8b9f5b5e4b94c794">  265</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a334ddc392fb6e14b8b9f5b5e4b94c794">getZ</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[2]; }</div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a41ee945bcf88815c61326ca6196aa78f">  267</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a41ee945bcf88815c61326ca6196aa78f">setX</a>(<a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>) { m_floats[0] = <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>; };</div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#af9f7c5583343101af5d505bf05e6b6cb">  269</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#af9f7c5583343101af5d505bf05e6b6cb">setY</a>(<a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>) { m_floats[1] = <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>; };</div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a13bc0355b871b002b61ecef888b8ecea">  271</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a13bc0355b871b002b61ecef888b8ecea">setZ</a>(<a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>) { m_floats[2] = <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>; };</div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a5a4be68dd97f1809e8220090e7b73e46">  273</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a5a4be68dd97f1809e8220090e7b73e46">setW</a>(<a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>) { m_floats[3] = <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>; };</div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">  275</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[0]; }</div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">  277</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[1]; }</div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">  279</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[2]; }</div><div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">  281</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[3]; }</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;    <span class="comment">//SIMD_FORCE_INLINE btScalar&amp;       operator[](int32_t i)       { return (&amp;m_floats[0])[i]; }</span></div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="comment">//SIMD_FORCE_INLINE const btScalar&amp; operator[](int32_t i) const { return (&amp;m_floats[0])[i]; }</span></div><div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a287fc621890120b3ec7d4e14858ec179">  286</a></span>&#160;<span class="comment"></span>    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">operator</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>*() { <span class="keywordflow">return</span> &amp;m_floats[0]; }</div><div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a21f9c45afee9986f31235ac4f4eaf4ce">  287</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keyword">operator</span> <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>*() <span class="keyword">const</span> { <span class="keywordflow">return</span> &amp;m_floats[0]; }</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a03598b58d7cf9c0012e99710eb3e2988">  289</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">bool</span> <a class="code" href="bt_vector3_8h.html#a03598b58d7cf9c0012e99710eb3e2988">operator==</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; other)<span class="keyword"> const</span></div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        <span class="keywordflow">return</span> ((m_floats[3] == other.m_floats[3]) &amp;&amp; (m_floats[2] == other.m_floats[2]) &amp;&amp; (m_floats[1] == other.m_floats[1]) &amp;&amp; (m_floats[0] == other.m_floats[0]));</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;    }</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a2acb8d20d771dec7b7257886364c35b9">  294</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">bool</span> <a class="code" href="bt_vector3_8h.html#a2acb8d20d771dec7b7257886364c35b9">operator!=</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; other)<span class="keyword"> const</span></div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == other);</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;    }</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a6ded65e4a84fea22e292d69b2474c509">  302</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a6ded65e4a84fea22e292d69b2474c509">setMax</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; other)</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    {</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <a class="code" href="bt_min_max_8h.html#a840762049d6b465a4b5ff42c1b892e80">btSetMax</a>(m_floats[0], other.m_floats[0]);</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;        <a class="code" href="bt_min_max_8h.html#a840762049d6b465a4b5ff42c1b892e80">btSetMax</a>(m_floats[1], other.m_floats[1]);</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;        <a class="code" href="bt_min_max_8h.html#a840762049d6b465a4b5ff42c1b892e80">btSetMax</a>(m_floats[2], other.m_floats[2]);</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;        <a class="code" href="bt_min_max_8h.html#a840762049d6b465a4b5ff42c1b892e80">btSetMax</a>(m_floats[3], other.w());</div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    }</div><div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ab87530c206e0f9f64b49235fcd96e604">  312</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#ab87530c206e0f9f64b49235fcd96e604">setMin</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; other)</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    {</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;        <a class="code" href="bt_min_max_8h.html#a544e4184451f1eaf44369ce74091d391">btSetMin</a>(m_floats[0], other.m_floats[0]);</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;        <a class="code" href="bt_min_max_8h.html#a544e4184451f1eaf44369ce74091d391">btSetMin</a>(m_floats[1], other.m_floats[1]);</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;        <a class="code" href="bt_min_max_8h.html#a544e4184451f1eaf44369ce74091d391">btSetMin</a>(m_floats[2], other.m_floats[2]);</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        <a class="code" href="bt_min_max_8h.html#a544e4184451f1eaf44369ce74091d391">btSetMin</a>(m_floats[3], other.w());</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    }</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;</div><div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a479473af6a5018f5386e719427ee7848">  320</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a479473af6a5018f5386e719427ee7848">setValue</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>)</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    {</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        m_floats[0] = <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;        m_floats[1] = <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>;</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;        m_floats[2] = <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>;</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;        m_floats[3] = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.);</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    }</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a732c347384876e254fdd547b5e92163f">  328</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a732c347384876e254fdd547b5e92163f">getSkewSymmetricMatrix</a>(<a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> * v0, <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> * v1, <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> * v2)<span class="keyword"> const</span></div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;        v0-&gt;setValue(0., -<a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>(), <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>());</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        v1-&gt;setValue(<a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>(), 0., -<a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>());</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;        v2-&gt;setValue(-<a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>(), <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>(), 0.);</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    }</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;</div><div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a47affd1a10b589811fc4828c1a2e0c6d">  335</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a47affd1a10b589811fc4828c1a2e0c6d">setZero</a>()</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    {</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;        <a class="code" href="bt_vector3_8h.html#a479473af6a5018f5386e719427ee7848">setValue</a>(<a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.), <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.), <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.));</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    }</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#acc751d47eebb95e8dd085b1e6533f0d2">  340</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">bool</span> <a class="code" href="bt_vector3_8h.html#acc751d47eebb95e8dd085b1e6533f0d2">isZero</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;        <span class="keywordflow">return</span> m_floats[0] == <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0) &amp;&amp; m_floats[1] == <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0) &amp;&amp; m_floats[2] == <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0);</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    }</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a9cd58e8bfd8329b603e83c3f8ce7ca9e">  345</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">bool</span> <a class="code" href="bt_vector3_8h.html#a9cd58e8bfd8329b603e83c3f8ce7ca9e">fuzzyZero</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a10bc669d0cd2db9595affab30e5532cf">length2</a>() &lt; <a class="code" href="bt_scalar_8h.html#ae51eef6845bd59f964c1b2dbfe7054b7">SIMD_EPSILON</a>;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    }</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#aa97ad00bf0550636fd7e2e701fb7067f">serialize</a>(<span class="keyword">struct</span> <a class="code" href="bt_vector3_8h.html#ad116b75e5135551c1335437e47fd8a3f">btVector3Data</a> &amp; dataOut) <span class="keyword">const</span>;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#ab97452b3ced1f03b405a589ef841e96f">deSerialize</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="bt_vector3_8h.html#ad116b75e5135551c1335437e47fd8a3f">btVector3Data</a>&amp; dataIn);</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a675c633d0a3de26b2b9c5800c1d0fcc5">serializeFloat</a>(<span class="keyword">struct</span> <a class="code" href="structbt_vector3_float_data.html">btVector3FloatData</a> &amp; dataOut) <span class="keyword">const</span>;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a92157a4108a364787eb1b937c7b6d3ce">deSerializeFloat</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structbt_vector3_float_data.html">btVector3FloatData</a>&amp; dataIn);</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#aa34bf52c416f53754920dd9126721f82">serializeDouble</a>(<span class="keyword">struct</span> <a class="code" href="structbt_vector3_double_data.html">btVector3DoubleData</a> &amp; dataOut) <span class="keyword">const</span>;</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a4241fc63918b2364ad15adcf42017554">deSerializeDouble</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structbt_vector3_double_data.html">btVector3DoubleData</a>&amp; dataIn);</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;};</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a59d21eb22bc12d95d210582bbbc23618">  365</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a59d21eb22bc12d95d210582bbbc23618">operator+</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;{</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(v1.m_floats[0] + v2.m_floats[0], v1.m_floats[1] + v2.m_floats[1], v1.m_floats[2] + v2.m_floats[2]);</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;}</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ab0d1eced446920c5cc3fac4aa0bcbafa">  372</a></span>&#160;<a class="code" href="bt_vector3_8h.html#ab0d1eced446920c5cc3fac4aa0bcbafa">operator*</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;{</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(v1.m_floats[0] * v2.m_floats[0], v1.m_floats[1] * v2.m_floats[1], v1.m_floats[2] * v2.m_floats[2]);</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;}</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00379"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a57cef67d5a8965ce768af0f3ba01b3f7">  379</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a57cef67d5a8965ce768af0f3ba01b3f7">operator-</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;{</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(v1.m_floats[0] - v2.m_floats[0], v1.m_floats[1] - v2.m_floats[1], v1.m_floats[2] - v2.m_floats[2]);</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;}</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a196a258574acadf69c24f868d4506585">  385</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a57cef67d5a8965ce768af0f3ba01b3f7">operator-</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;{</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(-v.m_floats[0], -v.m_floats[1], -v.m_floats[2]);</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;}</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#abc7be02cbea667c08b7242a29083f7ce">  392</a></span>&#160;<a class="code" href="bt_vector3_8h.html#ab0d1eced446920c5cc3fac4aa0bcbafa">operator*</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; s)</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;{</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(v.m_floats[0] * s, v.m_floats[1] * s, v.m_floats[2] * s);</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;}</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00399"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a75f69235611a42e6214ff509c2a23236">  399</a></span>&#160;<a class="code" href="bt_vector3_8h.html#ab0d1eced446920c5cc3fac4aa0bcbafa">operator*</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; s, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;{</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;    <span class="keywordflow">return</span> v * s;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;}</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aa5c0296bb009809423866d7282ae58e2">  406</a></span>&#160;<a class="code" href="bt_vector3_8h.html#aa5c0296bb009809423866d7282ae58e2">operator/</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; s)</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;{</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    <a class="code" href="bt_scalar_8h.html#a90bc8c8b8f79211b2b7f0356c4cd804f">btFullAssert</a>(s != <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(0.0));</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;    <span class="keywordflow">return</span> v * (<a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(1.0) / s);</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;}</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00414"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ada41f7dc7bda588d0c8421d446c3bf05">  414</a></span>&#160;<a class="code" href="bt_vector3_8h.html#aa5c0296bb009809423866d7282ae58e2">operator/</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;{</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(v1.m_floats[0] / v2.m_floats[0], v1.m_floats[1] / v2.m_floats[1], v1.m_floats[2] / v2.m_floats[2]);</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;}</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a></div><div class="line"><a name="l00421"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a550dc4505b1f10c03a685705f41f4011">  421</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a550dc4505b1f10c03a685705f41f4011">btDot</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;{</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <span class="keywordflow">return</span> v1.dot(v2);</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;}</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a></div><div class="line"><a name="l00428"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#acb9d56a9d84e04f74f595787c4ffe244">  428</a></span>&#160;<a class="code" href="bt_vector3_8h.html#acb9d56a9d84e04f74f595787c4ffe244">btDistance2</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;{</div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    <span class="keywordflow">return</span> v1.distance2(v2);</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;}</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a></div><div class="line"><a name="l00435"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a807989b9a52fe29eb4109795d9b7e023">  435</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a807989b9a52fe29eb4109795d9b7e023">btDistance</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;{</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    <span class="keywordflow">return</span> v1.distance(v2);</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;}</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a></div><div class="line"><a name="l00442"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a895569a6d2cf658dbbbbb88c7d93f312">  442</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a895569a6d2cf658dbbbbb88c7d93f312">btAngle</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;{</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    <span class="keywordflow">return</span> v1.angle(v2);</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;}</div><div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00449"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ad50f4077e814fac34e7d7d5d461278de">  449</a></span>&#160;<a class="code" href="bt_vector3_8h.html#ad50f4077e814fac34e7d7d5d461278de">btCross</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2)</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;{</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;    <span class="keywordflow">return</span> v1.cross(v2);</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;}</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a></div><div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a98343fa170fe356460903cbed3e606a3">  455</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a98343fa170fe356460903cbed3e606a3">btTriple</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v3)</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;{</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;    <span class="keywordflow">return</span> v1.triple(v2, v3);</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;}</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="line"><a name="l00465"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a6fed16d2caeeb6696519d64bac9494e3">  465</a></span>&#160;<a class="code" href="bt_vector3_8h.html#a75b314f15ed597121fe298bd66816160">lerp</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v1, <span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v2, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; t)</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;{</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;    <span class="keywordflow">return</span> v1.lerp(v2, t);</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;}</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;</div><div class="line"><a name="l00470"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ad41fea09dcee2db07c7a8a128749d42e">  470</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#ad41fea09dcee2db07c7a8a128749d42e">btVector3::distance2</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)<span class="keyword"> const</span></div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;    <span class="keywordflow">return</span> (v - *<span class="keyword">this</span>).length2();</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;}</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ae6b71ab121d96689e1ce5f8903f56258">  475</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#ae6b71ab121d96689e1ce5f8903f56258">btVector3::distance</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; v)<span class="keyword"> const</span></div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;    <span class="keywordflow">return</span> (v - *<span class="keyword">this</span>).length();</div><div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;}</div><div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aa372be4e51e83a8100f279e98468230e">  480</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#aa372be4e51e83a8100f279e98468230e">btVector3::normalized</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;    <span class="keywordflow">return</span> *<span class="keyword">this</span> / <a class="code" href="bt_vector3_8h.html#afc8f7d2e5d8f2ed1eab977727a6b3501">length</a>();</div><div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;}</div><div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;</div><div class="line"><a name="l00485"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a2834558f3d04abfb5b40fd7c23ebe8d3">  485</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#a2834558f3d04abfb5b40fd7c23ebe8d3">btVector3::rotate</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; wAxis, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="bt_vector3_8h.html#a545c49277de85f6dbc05ec06319eee1b">angle</a>)<span class="keyword"> const</span></div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;    <span class="comment">// wAxis must be a unit lenght vector</span></div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;    <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> o = wAxis * wAxis.dot(*<span class="keyword">this</span>);</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;    <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a> = *<span class="keyword">this</span> - o;</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;    <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>;</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;    y = wAxis.cross(*<span class="keyword">this</span>);</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;</div><div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;    <span class="keywordflow">return</span> (o + x * <a class="code" href="bt_scalar_8h.html#a08cebf88560180c665f205810cc02d0f">btCos</a>(angle) + y * <a class="code" href="bt_scalar_8h.html#a21de15ec6359a37d7876fa26be384a4b">btSin</a>(angle));</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;}</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;</div><div class="line"><a name="l00498"></a><span class="lineno"><a class="line" href="classbt_vector4.html">  498</a></span>&#160;<span class="keyword">class </span><a class="code" href="classbt_vector4.html">btVector4</a> : <span class="keyword">public</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> {</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00500"></a><span class="lineno"><a class="line" href="classbt_vector4.html#ab8f1a78ef86a9727b6f680d83e8e4259">  500</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="classbt_vector4.html#ab8f1a78ef86a9727b6f680d83e8e4259">btVector4</a>() {}</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;</div><div class="line"><a name="l00502"></a><span class="lineno"><a class="line" href="classbt_vector4.html#ad2254549b54833d12c99e47914f8769a">  502</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="classbt_vector4.html#ad2254549b54833d12c99e47914f8769a">btVector4</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>)</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;        : <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>(x, y, z)</div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;    {</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;        m_floats[3] = <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>;</div><div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;    }</div><div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;</div><div class="line"><a name="l00508"></a><span class="lineno"><a class="line" href="classbt_vector4.html#ad2e7c85de1bd51dc03f7e7e0fcb2bc4e">  508</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <a class="code" href="classbt_vector4.html">btVector4</a> <a class="code" href="classbt_vector4.html#ad2e7c85de1bd51dc03f7e7e0fcb2bc4e">absolute4</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classbt_vector4.html#ab8f1a78ef86a9727b6f680d83e8e4259">btVector4</a>(</div><div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[0]),</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[1]),</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[2]),</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;            <a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(m_floats[3]));</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    }</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;</div><div class="line"><a name="l00517"></a><span class="lineno"><a class="line" href="classbt_vector4.html#aa5e27c8aa32b7f8ad8cdd96498fff837">  517</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> <a class="code" href="classbt_vector4.html#aa5e27c8aa32b7f8ad8cdd96498fff837">getW</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_floats[3]; }</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;</div><div class="line"><a name="l00519"></a><span class="lineno"><a class="line" href="classbt_vector4.html#a57370df3bd5ca35ccb2afff8fe2f1202">  519</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="classbt_vector4.html#a57370df3bd5ca35ccb2afff8fe2f1202">maxAxis4</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;        int32_t maxIndex = -1;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> maxVal = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(-<a class="code" href="bt_scalar_8h.html#a3a24ecdd029d38fef175bee5d965710a">BT_LARGE_FLOAT</a>);</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;        <span class="keywordflow">if</span> (m_floats[0] &gt; maxVal) {</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;            maxIndex = 0;</div><div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;            maxVal = m_floats[0];</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;        }</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <span class="keywordflow">if</span> (m_floats[1] &gt; maxVal) {</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;            maxIndex = 1;</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;            maxVal = m_floats[1];</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;        }</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        <span class="keywordflow">if</span> (m_floats[2] &gt; maxVal) {</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;            maxIndex = 2;</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;            maxVal = m_floats[2];</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;        }</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;        <span class="keywordflow">if</span> (m_floats[3] &gt; maxVal) {</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;            maxIndex = 3;</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;        }</div><div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;        <span class="keywordflow">return</span> maxIndex;</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;    }</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"><a class="line" href="classbt_vector4.html#a143319a25af25512fcd38a1fcbc7fb86">  541</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="classbt_vector4.html#a143319a25af25512fcd38a1fcbc7fb86">minAxis4</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;        int32_t minIndex = -1;</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> minVal = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(<a class="code" href="bt_scalar_8h.html#a3a24ecdd029d38fef175bee5d965710a">BT_LARGE_FLOAT</a>);</div><div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;        <span class="keywordflow">if</span> (m_floats[0] &lt; minVal) {</div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;            minIndex = 0;</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;            minVal = m_floats[0];</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;        }</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        <span class="keywordflow">if</span> (m_floats[1] &lt; minVal) {</div><div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;            minIndex = 1;</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;            minVal = m_floats[1];</div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;        }</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;        <span class="keywordflow">if</span> (m_floats[2] &lt; minVal) {</div><div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;            minIndex = 2;</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;            minVal = m_floats[2];</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;        }</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;        <span class="keywordflow">if</span> (m_floats[3] &lt; minVal) {</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;            minIndex = 3;</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;        }</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;        <span class="keywordflow">return</span> minIndex;</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;    }</div><div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;</div><div class="line"><a name="l00564"></a><span class="lineno"><a class="line" href="classbt_vector4.html#ac0c0c1b24cc18d0ce62d7d6ce0ec226c">  564</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> int32_t <a class="code" href="classbt_vector4.html#ac0c0c1b24cc18d0ce62d7d6ce0ec226c">closestAxis4</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;<span class="keyword">    </span>{</div><div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classbt_vector4.html#ad2e7c85de1bd51dc03f7e7e0fcb2bc4e">absolute4</a>().<a class="code" href="classbt_vector4.html#a57370df3bd5ca35ccb2afff8fe2f1202">maxAxis4</a>();</div><div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;    }</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;    <span class="comment">/*      void getValue(btScalar *m) const </span></div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="comment">        {</span></div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;<span class="comment">            m[0] = m_floats[0];</span></div><div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;<span class="comment">            m[1] = m_floats[1];</span></div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;<span class="comment">            m[2] =m_floats[2];</span></div><div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;<span class="comment">        }</span></div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;<span class="comment">*/</span></div><div class="line"><a name="l00588"></a><span class="lineno"><a class="line" href="classbt_vector4.html#a08b401e9e501467c7c8c4f2edbcf3db2">  588</a></span>&#160;    <a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="classbt_vector4.html#a08b401e9e501467c7c8c4f2edbcf3db2">setValue</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>, <span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>)</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;    {</div><div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;        m_floats[0] = <a class="code" href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a>;</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;        m_floats[1] = <a class="code" href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a>;</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        m_floats[2] = <a class="code" href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a>;</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;        m_floats[3] = <a class="code" href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a>;</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;    }</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;};</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;</div><div class="line"><a name="l00598"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a73a7b483dcde16e86e28e8c75be3df99">  598</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a73a7b483dcde16e86e28e8c75be3df99">btSwapScalarEndian</a>(<span class="keyword">const</span> <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; sourceVal, <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>&amp; destVal)</div><div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;{</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;<span class="preprocessor">#ifdef BT_USE_DOUBLE_PRECISION</span></div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* dest = (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&amp;destVal;</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* src = (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&amp;sourceVal;</div><div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;    dest[0] = src[7];</div><div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;    dest[1] = src[6];</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;    dest[2] = src[5];</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;    dest[3] = src[4];</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;    dest[4] = src[3];</div><div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;    dest[5] = src[2];</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;    dest[6] = src[1];</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;    dest[7] = src[0];</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* dest = (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&amp;destVal;</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* src = (<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&amp;sourceVal;</div><div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;    dest[0] = src[3];</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;    dest[1] = src[2];</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;    dest[2] = src[1];</div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;    dest[3] = src[0];</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;<span class="preprocessor">#endif //BT_USE_DOUBLE_PRECISION</span></div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;}</div><div class="line"><a name="l00621"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a96dc28c8355164ad9a4736ad2fe99e2c">  621</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a96dc28c8355164ad9a4736ad2fe99e2c">btSwapVector3Endian</a>(<span class="keyword">const</span> <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; sourceVec, <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; destVec)</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;{</div><div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++) {</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;        <a class="code" href="bt_vector3_8h.html#a73a7b483dcde16e86e28e8c75be3df99">btSwapScalarEndian</a>(sourceVec[i], destVec[i]);</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;    }</div><div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;}</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;</div><div class="line"><a name="l00629"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a111b328c4d76341871adb4712477ad21">  629</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a111b328c4d76341871adb4712477ad21">btUnSwapVector3Endian</a>(<a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a>&amp; vector)</div><div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;{</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;</div><div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;    <a class="code" href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a> swappedVec;</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++) {</div><div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;        <a class="code" href="bt_vector3_8h.html#a73a7b483dcde16e86e28e8c75be3df99">btSwapScalarEndian</a>(vector[i], swappedVec[i]);</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;    }</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;    vector = swappedVec;</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;}</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div><div class="line"><a name="l00640"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a0682ea634178928396d78f27c87aec07">  640</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a0682ea634178928396d78f27c87aec07">btPlaneSpace1</a>(<span class="keyword">const</span> T&amp; n, T&amp; p, T&amp; q)</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;{</div><div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a>(n[2]) &gt; <a class="code" href="bt_scalar_8h.html#a568883327ba96f54afed8dfd7ec1c66e">SIMDSQRT12</a>) {</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;        <span class="comment">// choose p in y-z plane</span></div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> a = n[1] * n[1] + n[2] * n[2];</div><div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> k = <a class="code" href="bt_scalar_8h.html#a3103b9da34215c512d7fbff3cd94dd60">btRecipSqrt</a>(a);</div><div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;        p[0] = 0;</div><div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;        p[1] = -n[2] * k;</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;        p[2] = n[1] * k;</div><div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;        <span class="comment">// set q = n x p</span></div><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;        q[0] = a * k;</div><div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;        q[1] = -n[0] * p[2];</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;        q[2] = n[0] * p[1];</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;    }</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;    <span class="keywordflow">else</span> {</div><div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;        <span class="comment">// choose p in x-y plane</span></div><div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> a = n[0] * n[0] + n[1] * n[1];</div><div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;        <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a> k = <a class="code" href="bt_scalar_8h.html#a3103b9da34215c512d7fbff3cd94dd60">btRecipSqrt</a>(a);</div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;        p[0] = -n[1] * k;</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;        p[1] = n[0] * k;</div><div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;        p[2] = 0;</div><div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;        <span class="comment">// set q = n x p</span></div><div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;        q[0] = -n[2] * p[1];</div><div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;        q[1] = n[2] * p[0];</div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;        q[2] = a * k;</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;    }</div><div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;}</div><div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;</div><div class="line"><a name="l00668"></a><span class="lineno"><a class="line" href="structbt_vector3_float_data.html">  668</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structbt_vector3_float_data.html">btVector3FloatData</a> {</div><div class="line"><a name="l00669"></a><span class="lineno"><a class="line" href="structbt_vector3_float_data.html#ab246fb8dc0af06cfb3260d836591dc46">  669</a></span>&#160;    <span class="keywordtype">float</span> m_floats[4];</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;};</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;</div><div class="line"><a name="l00672"></a><span class="lineno"><a class="line" href="structbt_vector3_double_data.html">  672</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structbt_vector3_double_data.html">btVector3DoubleData</a> {</div><div class="line"><a name="l00673"></a><span class="lineno"><a class="line" href="structbt_vector3_double_data.html#a69c991016e883f0320d5c646f56d243e">  673</a></span>&#160;    <span class="keywordtype">double</span> m_floats[4];</div><div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;};</div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;</div><div class="line"><a name="l00676"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a675c633d0a3de26b2b9c5800c1d0fcc5">  676</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a675c633d0a3de26b2b9c5800c1d0fcc5">btVector3::serializeFloat</a>(<span class="keyword">struct</span> <a class="code" href="structbt_vector3_float_data.html">btVector3FloatData</a>&amp; dataOut)<span class="keyword"> const</span></div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++)</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;        dataOut.<a class="code" href="structbt_vector3_float_data.html#ab246fb8dc0af06cfb3260d836591dc46">m_floats</a>[i] = <span class="keywordtype">float</span>(m_floats[i]);</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;}</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;</div><div class="line"><a name="l00683"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a92157a4108a364787eb1b937c7b6d3ce">  683</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a92157a4108a364787eb1b937c7b6d3ce">btVector3::deSerializeFloat</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structbt_vector3_float_data.html">btVector3FloatData</a>&amp; dataIn)</div><div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;{</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++)</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;        m_floats[i] = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(dataIn.<a class="code" href="structbt_vector3_float_data.html#ab246fb8dc0af06cfb3260d836591dc46">m_floats</a>[i]);</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;}</div><div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;</div><div class="line"><a name="l00689"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#aa34bf52c416f53754920dd9126721f82">  689</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#aa34bf52c416f53754920dd9126721f82">btVector3::serializeDouble</a>(<span class="keyword">struct</span> <a class="code" href="structbt_vector3_double_data.html">btVector3DoubleData</a>&amp; dataOut)<span class="keyword"> const</span></div><div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++)</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;        dataOut.<a class="code" href="structbt_vector3_double_data.html#a69c991016e883f0320d5c646f56d243e">m_floats</a>[i] = <span class="keywordtype">double</span>(m_floats[i]);</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;}</div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;</div><div class="line"><a name="l00696"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#a4241fc63918b2364ad15adcf42017554">  696</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#a4241fc63918b2364ad15adcf42017554">btVector3::deSerializeDouble</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structbt_vector3_double_data.html">btVector3DoubleData</a>&amp; dataIn)</div><div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;{</div><div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++)</div><div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;        m_floats[i] = <a class="code" href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a>(dataIn.<a class="code" href="structbt_vector3_double_data.html#a69c991016e883f0320d5c646f56d243e">m_floats</a>[i]);</div><div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;}</div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#aa97ad00bf0550636fd7e2e701fb7067f">btVector3::serialize</a>(<span class="keyword">struct</span> <a class="code" href="bt_vector3_8h.html#ad116b75e5135551c1335437e47fd8a3f">btVector3Data</a>&amp; dataOut)<span class="keyword"> const</span></div><div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++)</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;        dataOut.m_floats[i] = m_floats[i];</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;}</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div><div class="line"><a name="l00709"></a><span class="lineno"><a class="line" href="bt_vector3_8h.html#ab97452b3ced1f03b405a589ef841e96f">  709</a></span>&#160;<a class="code" href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a> <span class="keywordtype">void</span> <a class="code" href="bt_vector3_8h.html#ab97452b3ced1f03b405a589ef841e96f">btVector3::deSerialize</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="bt_vector3_8h.html#ad116b75e5135551c1335437e47fd8a3f">btVector3Data</a>&amp; dataIn)</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;{</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;    <span class="keywordflow">for</span> (int32_t i = 0; i &lt; 4; i++)</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;        m_floats[i] = dataIn.m_floats[i];</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;}</div><div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;<span class="preprocessor">#endif //BT_VECTOR3_H</span></div><div class="ttc" id="bt_vector3_8h_html_a03598b58d7cf9c0012e99710eb3e2988"><div class="ttname"><a href="bt_vector3_8h.html#a03598b58d7cf9c0012e99710eb3e2988">operator==</a></div><div class="ttdeci">SIMD_FORCE_INLINE bool operator==(const btVector3 &amp;other) const</div><div class="ttdef"><b>Definition:</b> btVector3.h:289</div></div>
<div class="ttc" id="bt_scalar_8h_html_a38c30fdd0ea2558373a1b6e41c77d9d2"><div class="ttname"><a href="bt_scalar_8h.html#a38c30fdd0ea2558373a1b6e41c77d9d2">ATTRIBUTE_ALIGNED16</a></div><div class="ttdeci">#define ATTRIBUTE_ALIGNED16(a)</div><div class="ttdef"><b>Definition:</b> btScalar.h:178</div></div>
<div class="ttc" id="bt_min_max_8h_html_a840762049d6b465a4b5ff42c1b892e80"><div class="ttname"><a href="bt_min_max_8h.html#a840762049d6b465a4b5ff42c1b892e80">btSetMax</a></div><div class="ttdeci">SIMD_FORCE_INLINE void btSetMax(T &amp;a, const T &amp;b)</div><div class="ttdef"><b>Definition:</b> btMinMax.h:47</div></div>
<div class="ttc" id="bt_vector3_8h_html_aa97ad00bf0550636fd7e2e701fb7067f"><div class="ttname"><a href="bt_vector3_8h.html#aa97ad00bf0550636fd7e2e701fb7067f">serialize</a></div><div class="ttdeci">SIMD_FORCE_INLINE void serialize(struct btVector3Data &amp;dataOut) const</div></div>
<div class="ttc" id="bt_vector3_8h_html_a13bc0355b871b002b61ecef888b8ecea"><div class="ttname"><a href="bt_vector3_8h.html#a13bc0355b871b002b61ecef888b8ecea">setZ</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setZ(btScalar z)</div><div class="ttdoc">Set the z value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:271</div></div>
<div class="ttc" id="bt_vector3_8h_html_a75b314f15ed597121fe298bd66816160"><div class="ttname"><a href="bt_vector3_8h.html#a75b314f15ed597121fe298bd66816160">lerp</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 lerp(const btVector3 &amp;v, const btScalar &amp;t) const</div><div class="ttdoc">Return the linear interpolation between this and another vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:243</div></div>
<div class="ttc" id="bt_min_max_8h_html_a544e4184451f1eaf44369ce74091d391"><div class="ttname"><a href="bt_min_max_8h.html#a544e4184451f1eaf44369ce74091d391">btSetMin</a></div><div class="ttdeci">SIMD_FORCE_INLINE void btSetMin(T &amp;a, const T &amp;b)</div><div class="ttdef"><b>Definition:</b> btMinMax.h:39</div></div>
<div class="ttc" id="bt_vector3_8h_html_a807989b9a52fe29eb4109795d9b7e023"><div class="ttname"><a href="bt_vector3_8h.html#a807989b9a52fe29eb4109795d9b7e023">btDistance</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btDistance(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the distance between two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:435</div></div>
<div class="ttc" id="structbt_vector3_double_data_html"><div class="ttname"><a href="structbt_vector3_double_data.html">btVector3DoubleData</a></div><div class="ttdef"><b>Definition:</b> btVector3.h:672</div></div>
<div class="ttc" id="bt_vector3_8h_html_a1413171f4206f8873704d0b306059ab1"><div class="ttname"><a href="bt_vector3_8h.html#a1413171f4206f8873704d0b306059ab1">minAxis</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t minAxis() const</div><div class="ttdoc">Return the axis with the smallest value Note return values are 0,1,2 for x, y, or z...</div><div class="ttdef"><b>Definition:</b> btVector3.h:208</div></div>
<div class="ttc" id="bt_vector3_8h_html_a4a1a82b60c07a33807d1e43d2d6aede6"><div class="ttname"><a href="bt_vector3_8h.html#a4a1a82b60c07a33807d1e43d2d6aede6">dot</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar dot(const btVector3 &amp;v) const</div><div class="ttdoc">Return the dot product. </div><div class="ttdef"><b>Definition:</b> btVector3.h:123</div></div>
<div class="ttc" id="bt_scalar_8h_html_ae51eef6845bd59f964c1b2dbfe7054b7"><div class="ttname"><a href="bt_scalar_8h.html#ae51eef6845bd59f964c1b2dbfe7054b7">SIMD_EPSILON</a></div><div class="ttdeci">#define SIMD_EPSILON</div><div class="ttdef"><b>Definition:</b> btScalar.h:320</div></div>
<div class="ttc" id="bt_vector3_8h_html_a675c633d0a3de26b2b9c5800c1d0fcc5"><div class="ttname"><a href="bt_vector3_8h.html#a675c633d0a3de26b2b9c5800c1d0fcc5">serializeFloat</a></div><div class="ttdeci">SIMD_FORCE_INLINE void serializeFloat(struct btVector3FloatData &amp;dataOut) const</div><div class="ttdef"><b>Definition:</b> btVector3.h:676</div></div>
<div class="ttc" id="bt_vector3_8h_html_a3083f1242193e3cac601afe9610cc4e5"><div class="ttname"><a href="bt_vector3_8h.html#a3083f1242193e3cac601afe9610cc4e5">normalize</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 &amp; normalize()</div><div class="ttdoc">Normalize this vector x^2 + y^2 + z^2 = 1. </div><div class="ttdef"><b>Definition:</b> btVector3.h:162</div></div>
<div class="ttc" id="bt_vector3_8h_html_a8fc6367a9ad19bfd2ac50e0c06c70dc6"><div class="ttname"><a href="bt_vector3_8h.html#a8fc6367a9ad19bfd2ac50e0c06c70dc6">setInterpolate3</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setInterpolate3(const btVector3 &amp;v0, const btVector3 &amp;v1, btScalar rt)</div><div class="ttdef"><b>Definition:</b> btVector3.h:230</div></div>
<div class="ttc" id="bt_vector3_8h_html_a9ac999fc46ed7720280dca03ad1e4e62"><div class="ttname"><a href="bt_vector3_8h.html#a9ac999fc46ed7720280dca03ad1e4e62">x</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; x() const</div><div class="ttdoc">Return the x value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:275</div></div>
<div class="ttc" id="bt_vector3_8h_html_af9f7c5583343101af5d505bf05e6b6cb"><div class="ttname"><a href="bt_vector3_8h.html#af9f7c5583343101af5d505bf05e6b6cb">setY</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setY(btScalar y)</div><div class="ttdoc">Set the y value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:269</div></div>
<div class="ttc" id="classbt_vector4_html_a08b401e9e501467c7c8c4f2edbcf3db2"><div class="ttname"><a href="classbt_vector4.html#a08b401e9e501467c7c8c4f2edbcf3db2">btVector4::setValue</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setValue(const btScalar &amp;x, const btScalar &amp;y, const btScalar &amp;z, const btScalar &amp;w)</div><div class="ttdoc">Set x,y,z and zero w. </div><div class="ttdef"><b>Definition:</b> btVector3.h:588</div></div>
<div class="ttc" id="bt_vector3_8h_html_a47affd1a10b589811fc4828c1a2e0c6d"><div class="ttname"><a href="bt_vector3_8h.html#a47affd1a10b589811fc4828c1a2e0c6d">setZero</a></div><div class="ttdeci">void setZero()</div><div class="ttdef"><b>Definition:</b> btVector3.h:335</div></div>
<div class="ttc" id="bt_min_max_8h_html"><div class="ttname"><a href="bt_min_max_8h.html">btMinMax.h</a></div></div>
<div class="ttc" id="bt_vector3_8h_html_a111b328c4d76341871adb4712477ad21"><div class="ttname"><a href="bt_vector3_8h.html#a111b328c4d76341871adb4712477ad21">btUnSwapVector3Endian</a></div><div class="ttdeci">SIMD_FORCE_INLINE void btUnSwapVector3Endian(btVector3 &amp;vector)</div><div class="ttdoc">btUnSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization ...</div><div class="ttdef"><b>Definition:</b> btVector3.h:629</div></div>
<div class="ttc" id="bt_scalar_8h_html_a004c41de4028b1437d1aafbaa0769cd5"><div class="ttname"><a href="bt_scalar_8h.html#a004c41de4028b1437d1aafbaa0769cd5">btAcos</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btAcos(btScalar x)</div><div class="ttdef"><b>Definition:</b> btScalar.h:282</div></div>
<div class="ttc" id="bt_vector3_8h_html_aa34bf52c416f53754920dd9126721f82"><div class="ttname"><a href="bt_vector3_8h.html#aa34bf52c416f53754920dd9126721f82">serializeDouble</a></div><div class="ttdeci">SIMD_FORCE_INLINE void serializeDouble(struct btVector3DoubleData &amp;dataOut) const</div><div class="ttdef"><b>Definition:</b> btVector3.h:689</div></div>
<div class="ttc" id="bt_vector3_8h_html_a2e10fb5cfae03326bf23b35ec12c9c94"><div class="ttname"><a href="bt_vector3_8h.html#a2e10fb5cfae03326bf23b35ec12c9c94">btVector3</a></div><div class="ttdeci">btVector3</div><div class="ttdoc">btVector3 can be used to represent 3D points and vectors. It has an un-used w component to suit 16-by...</div><div class="ttdef"><b>Definition:</b> btVector3.h:35</div></div>
<div class="ttc" id="bt_vector3_8h_html_a92157a4108a364787eb1b937c7b6d3ce"><div class="ttname"><a href="bt_vector3_8h.html#a92157a4108a364787eb1b937c7b6d3ce">deSerializeFloat</a></div><div class="ttdeci">SIMD_FORCE_INLINE void deSerializeFloat(const struct btVector3FloatData &amp;dataIn)</div><div class="ttdef"><b>Definition:</b> btVector3.h:683</div></div>
<div class="ttc" id="bt_vector3_8h_html_a2834558f3d04abfb5b40fd7c23ebe8d3"><div class="ttname"><a href="bt_vector3_8h.html#a2834558f3d04abfb5b40fd7c23ebe8d3">rotate</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 rotate(const btVector3 &amp;wAxis, const btScalar angle) const</div><div class="ttdoc">Return a rotated version of this vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:485</div></div>
<div class="ttc" id="bt_vector3_8h_html_ab87530c206e0f9f64b49235fcd96e604"><div class="ttname"><a href="bt_vector3_8h.html#ab87530c206e0f9f64b49235fcd96e604">setMin</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setMin(const btVector3 &amp;other)</div><div class="ttdoc">Set each element to the min of the current values and the values of another btVector3. </div><div class="ttdef"><b>Definition:</b> btVector3.h:312</div></div>
<div class="ttc" id="classbt_vector4_html_a57370df3bd5ca35ccb2afff8fe2f1202"><div class="ttname"><a href="classbt_vector4.html#a57370df3bd5ca35ccb2afff8fe2f1202">btVector4::maxAxis4</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t maxAxis4() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:519</div></div>
<div class="ttc" id="bt_scalar_8h_html_a4c4bd8e065ab617f4e37273d76e6d581"><div class="ttname"><a href="bt_scalar_8h.html#a4c4bd8e065ab617f4e37273d76e6d581">btFabs</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btFabs(btScalar x)</div><div class="ttdef"><b>Definition:</b> btScalar.h:278</div></div>
<div class="ttc" id="bt_vector3_8h_html_a41ee945bcf88815c61326ca6196aa78f"><div class="ttname"><a href="bt_vector3_8h.html#a41ee945bcf88815c61326ca6196aa78f">setX</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setX(btScalar x)</div><div class="ttdoc">Set the x value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:267</div></div>
<div class="ttc" id="bt_scalar_8h_html_a568883327ba96f54afed8dfd7ec1c66e"><div class="ttname"><a href="bt_scalar_8h.html#a568883327ba96f54afed8dfd7ec1c66e">SIMDSQRT12</a></div><div class="ttdeci">#define SIMDSQRT12</div><div class="ttdef"><b>Definition:</b> btScalar.h:312</div></div>
<div class="ttc" id="bt_vector3_8h_html_acb9d56a9d84e04f74f595787c4ffe244"><div class="ttname"><a href="bt_vector3_8h.html#acb9d56a9d84e04f74f595787c4ffe244">btDistance2</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btDistance2(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the distance squared between two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:428</div></div>
<div class="ttc" id="bt_scalar_8h_html_a1e5824cfc8adbf5a77f2622132d16018"><div class="ttname"><a href="bt_scalar_8h.html#a1e5824cfc8adbf5a77f2622132d16018">btScalar</a></div><div class="ttdeci">float btScalar</div><div class="ttdoc">The btScalar type abstracts floating point numbers, to easily switch between double and single floati...</div><div class="ttdef"><b>Definition:</b> btScalar.h:208</div></div>
<div class="ttc" id="classbt_vector4_html_ad2254549b54833d12c99e47914f8769a"><div class="ttname"><a href="classbt_vector4.html#ad2254549b54833d12c99e47914f8769a">btVector4::btVector4</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector4(const btScalar &amp;x, const btScalar &amp;y, const btScalar &amp;z, const btScalar &amp;w)</div><div class="ttdef"><b>Definition:</b> btVector3.h:502</div></div>
<div class="ttc" id="bt_scalar_8h_html_a3103b9da34215c512d7fbff3cd94dd60"><div class="ttname"><a href="bt_scalar_8h.html#a3103b9da34215c512d7fbff3cd94dd60">btRecipSqrt</a></div><div class="ttdeci">#define btRecipSqrt(x)</div><div class="ttdef"><b>Definition:</b> btScalar.h:314</div></div>
<div class="ttc" id="bt_scalar_8h_html_a08cebf88560180c665f205810cc02d0f"><div class="ttname"><a href="bt_scalar_8h.html#a08cebf88560180c665f205810cc02d0f">btCos</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btCos(btScalar x)</div><div class="ttdef"><b>Definition:</b> btScalar.h:279</div></div>
<div class="ttc" id="bt_vector3_8h_html_af56fb04fff6e6830e534274517c8fa23"><div class="ttname"><a href="bt_vector3_8h.html#af56fb04fff6e6830e534274517c8fa23">absolute</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 absolute() const</div><div class="ttdoc">Return a vector will the absolute values of each element. </div><div class="ttdef"><b>Definition:</b> btVector3.h:184</div></div>
<div class="ttc" id="bt_vector3_8h_html_ad213bcd7fce55a2f9d310114a2e157eb"><div class="ttname"><a href="bt_vector3_8h.html#ad213bcd7fce55a2f9d310114a2e157eb">operator*=</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 &amp; operator*=(const btScalar &amp;s)</div><div class="ttdoc">Scale the vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:105</div></div>
<div class="ttc" id="bt_vector3_8h_html_a6ded65e4a84fea22e292d69b2474c509"><div class="ttname"><a href="bt_vector3_8h.html#a6ded65e4a84fea22e292d69b2474c509">setMax</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setMax(const btVector3 &amp;other)</div><div class="ttdoc">Set each element to the max of the current values and the values of another btVector3. </div><div class="ttdef"><b>Definition:</b> btVector3.h:302</div></div>
<div class="ttc" id="bt_vector3_8h_html_adbffb9cb652cea7e0343fa39dcae22c8"><div class="ttname"><a href="bt_vector3_8h.html#adbffb9cb652cea7e0343fa39dcae22c8">y</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; y() const</div><div class="ttdoc">Return the y value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:277</div></div>
<div class="ttc" id="structbt_vector3_float_data_html_ab246fb8dc0af06cfb3260d836591dc46"><div class="ttname"><a href="structbt_vector3_float_data.html#ab246fb8dc0af06cfb3260d836591dc46">btVector3FloatData::m_floats</a></div><div class="ttdeci">float m_floats[4]</div><div class="ttdef"><b>Definition:</b> btVector3.h:669</div></div>
<div class="ttc" id="structbt_vector3_float_data_html"><div class="ttname"><a href="structbt_vector3_float_data.html">btVector3FloatData</a></div><div class="ttdef"><b>Definition:</b> btVector3.h:668</div></div>
<div class="ttc" id="bt_vector3_8h_html_ab0d1eced446920c5cc3fac4aa0bcbafa"><div class="ttname"><a href="bt_vector3_8h.html#ab0d1eced446920c5cc3fac4aa0bcbafa">operator*</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 operator*(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the elementwise product of two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:372</div></div>
<div class="ttc" id="classbt_vector4_html_a143319a25af25512fcd38a1fcbc7fb86"><div class="ttname"><a href="classbt_vector4.html#a143319a25af25512fcd38a1fcbc7fb86">btVector4::minAxis4</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t minAxis4() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:541</div></div>
<div class="ttc" id="bt_vector3_8h_html_aaa98d1e52f7d623dc642a73f8a47dbad"><div class="ttname"><a href="bt_vector3_8h.html#aaa98d1e52f7d623dc642a73f8a47dbad">maxAxis</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t maxAxis() const</div><div class="ttdoc">Return the axis with the largest value Note return values are 0,1,2 for x, y, or z. </div><div class="ttdef"><b>Definition:</b> btVector3.h:215</div></div>
<div class="ttc" id="classbt_vector4_html_ad2e7c85de1bd51dc03f7e7e0fcb2bc4e"><div class="ttname"><a href="classbt_vector4.html#ad2e7c85de1bd51dc03f7e7e0fcb2bc4e">btVector4::absolute4</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector4 absolute4() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:508</div></div>
<div class="ttc" id="bt_vector3_8h_html_a73a7b483dcde16e86e28e8c75be3df99"><div class="ttname"><a href="bt_vector3_8h.html#a73a7b483dcde16e86e28e8c75be3df99">btSwapScalarEndian</a></div><div class="ttdeci">SIMD_FORCE_INLINE void btSwapScalarEndian(const btScalar &amp;sourceVal, btScalar &amp;destVal)</div><div class="ttdoc">btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization ...</div><div class="ttdef"><b>Definition:</b> btVector3.h:598</div></div>
<div class="ttc" id="bt_vector3_8h_html_a96dc28c8355164ad9a4736ad2fe99e2c"><div class="ttname"><a href="bt_vector3_8h.html#a96dc28c8355164ad9a4736ad2fe99e2c">btSwapVector3Endian</a></div><div class="ttdeci">SIMD_FORCE_INLINE void btSwapVector3Endian(const btVector3 &amp;sourceVec, btVector3 &amp;destVec)</div><div class="ttdoc">btSwapVector3Endian swaps vector endianness, useful for network and cross-platform serialization ...</div><div class="ttdef"><b>Definition:</b> btVector3.h:621</div></div>
<div class="ttc" id="bt_vector3_8h_html_a9cd58e8bfd8329b603e83c3f8ce7ca9e"><div class="ttname"><a href="bt_vector3_8h.html#a9cd58e8bfd8329b603e83c3f8ce7ca9e">fuzzyZero</a></div><div class="ttdeci">SIMD_FORCE_INLINE bool fuzzyZero() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:345</div></div>
<div class="ttc" id="bt_vector3_8h_html_a545c49277de85f6dbc05ec06319eee1b"><div class="ttname"><a href="bt_vector3_8h.html#a545c49277de85f6dbc05ec06319eee1b">angle</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar angle(const btVector3 &amp;v) const</div><div class="ttdoc">Return the angle between this and another vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:177</div></div>
<div class="ttc" id="bt_scalar_8h_html_a21de15ec6359a37d7876fa26be384a4b"><div class="ttname"><a href="bt_scalar_8h.html#a21de15ec6359a37d7876fa26be384a4b">btSin</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btSin(btScalar x)</div><div class="ttdef"><b>Definition:</b> btScalar.h:280</div></div>
<div class="ttc" id="bt_vector3_8h_html_a7a750b3fe432249ef0c50e95fb61c69f"><div class="ttname"><a href="bt_vector3_8h.html#a7a750b3fe432249ef0c50e95fb61c69f">operator+=</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 &amp; operator+=(const btVector3 &amp;v)</div><div class="ttdoc">Add a vector to this one. </div><div class="ttdef"><b>Definition:</b> btVector3.h:85</div></div>
<div class="ttc" id="bt_vector3_8h_html_a40204accad7fbbe9fb169d235637a4c8"><div class="ttname"><a href="bt_vector3_8h.html#a40204accad7fbbe9fb169d235637a4c8">operator/=</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 &amp; operator/=(const btScalar &amp;s)</div><div class="ttdoc">Inversely scale the vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:115</div></div>
<div class="ttc" id="bt_vector3_8h_html_a732c347384876e254fdd547b5e92163f"><div class="ttname"><a href="bt_vector3_8h.html#a732c347384876e254fdd547b5e92163f">getSkewSymmetricMatrix</a></div><div class="ttdeci">void getSkewSymmetricMatrix(btVector3 *v0, btVector3 *v1, btVector3 *v2) const</div><div class="ttdef"><b>Definition:</b> btVector3.h:328</div></div>
<div class="ttc" id="bt_vector3_8h_html_ad50f4077e814fac34e7d7d5d461278de"><div class="ttname"><a href="bt_vector3_8h.html#ad50f4077e814fac34e7d7d5d461278de">btCross</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 btCross(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the cross product of two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:449</div></div>
<div class="ttc" id="bt_vector3_8h_html_a57cef67d5a8965ce768af0f3ba01b3f7"><div class="ttname"><a href="bt_vector3_8h.html#a57cef67d5a8965ce768af0f3ba01b3f7">operator-</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 operator-(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the difference between two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:379</div></div>
<div class="ttc" id="bt_vector3_8h_html_a59d21eb22bc12d95d210582bbbc23618"><div class="ttname"><a href="bt_vector3_8h.html#a59d21eb22bc12d95d210582bbbc23618">operator+</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 operator+(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the sum of two vectors (Point symantics) </div><div class="ttdef"><b>Definition:</b> btVector3.h:365</div></div>
<div class="ttc" id="bt_vector3_8h_html_ab97452b3ced1f03b405a589ef841e96f"><div class="ttname"><a href="bt_vector3_8h.html#ab97452b3ced1f03b405a589ef841e96f">deSerialize</a></div><div class="ttdeci">SIMD_FORCE_INLINE void deSerialize(const struct btVector3Data &amp;dataIn)</div><div class="ttdef"><b>Definition:</b> btVector3.h:709</div></div>
<div class="ttc" id="structbt_vector3_double_data_html_a69c991016e883f0320d5c646f56d243e"><div class="ttname"><a href="structbt_vector3_double_data.html#a69c991016e883f0320d5c646f56d243e">btVector3DoubleData::m_floats</a></div><div class="ttdeci">double m_floats[4]</div><div class="ttdef"><b>Definition:</b> btVector3.h:673</div></div>
<div class="ttc" id="bt_scalar_8h_html_a90bc8c8b8f79211b2b7f0356c4cd804f"><div class="ttname"><a href="bt_scalar_8h.html#a90bc8c8b8f79211b2b7f0356c4cd804f">btFullAssert</a></div><div class="ttdeci">#define btFullAssert(x)</div><div class="ttdef"><b>Definition:</b> btScalar.h:192</div></div>
<div class="ttc" id="bt_vector3_8h_html_a98343fa170fe356460903cbed3e606a3"><div class="ttname"><a href="bt_vector3_8h.html#a98343fa170fe356460903cbed3e606a3">btTriple</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btTriple(const btVector3 &amp;v1, const btVector3 &amp;v2, const btVector3 &amp;v3)</div><div class="ttdef"><b>Definition:</b> btVector3.h:455</div></div>
<div class="ttc" id="bt_vector3_8h_html_a3f3aadabc51f8182c778f0db663be185"><div class="ttname"><a href="bt_vector3_8h.html#a3f3aadabc51f8182c778f0db663be185">closestAxis</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t closestAxis() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:225</div></div>
<div class="ttc" id="bt_scalar_8h_html"><div class="ttname"><a href="bt_scalar_8h.html">btScalar.h</a></div></div>
<div class="ttc" id="bt_vector3_8h_html_ab4aa784dd3b3c09f887133f5c252b1a7"><div class="ttname"><a href="bt_vector3_8h.html#ab4aa784dd3b3c09f887133f5c252b1a7">safeNormalize</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 &amp; safeNormalize()</div><div class="ttdef"><b>Definition:</b> btVector3.h:148</div></div>
<div class="ttc" id="bt_vector3_8h_html_acad072d73dc2f6f9370157ec1715c8c1"><div class="ttname"><a href="bt_vector3_8h.html#acad072d73dc2f6f9370157ec1715c8c1">operator-=</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 &amp; operator-=(const btVector3 &amp;v)</div><div class="ttdoc">Subtract a vector from this one. </div><div class="ttdef"><b>Definition:</b> btVector3.h:96</div></div>
<div class="ttc" id="bt_vector3_8h_html_aa372be4e51e83a8100f279e98468230e"><div class="ttname"><a href="bt_vector3_8h.html#aa372be4e51e83a8100f279e98468230e">normalized</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 normalized() const</div><div class="ttdoc">Return a normalized version of this vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:480</div></div>
<div class="ttc" id="classbt_vector4_html_aa5e27c8aa32b7f8ad8cdd96498fff837"><div class="ttname"><a href="classbt_vector4.html#aa5e27c8aa32b7f8ad8cdd96498fff837">btVector4::getW</a></div><div class="ttdeci">btScalar getW() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:517</div></div>
<div class="ttc" id="bt_scalar_8h_html_a8a6a3e8b28846a3d7271e376c738ec40"><div class="ttname"><a href="bt_scalar_8h.html#a8a6a3e8b28846a3d7271e376c738ec40">SIMD_FORCE_INLINE</a></div><div class="ttdeci">#define SIMD_FORCE_INLINE</div><div class="ttdef"><b>Definition:</b> btScalar.h:173</div></div>
<div class="ttc" id="bt_vector3_8h_html_aa5c0296bb009809423866d7282ae58e2"><div class="ttname"><a href="bt_vector3_8h.html#aa5c0296bb009809423866d7282ae58e2">operator/</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 operator/(const btVector3 &amp;v, const btScalar &amp;s)</div><div class="ttdoc">Return the vector inversely scaled by s. </div><div class="ttdef"><b>Definition:</b> btVector3.h:406</div></div>
<div class="ttc" id="bt_vector3_8h_html_a479473af6a5018f5386e719427ee7848"><div class="ttname"><a href="bt_vector3_8h.html#a479473af6a5018f5386e719427ee7848">setValue</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setValue(const btScalar &amp;x, const btScalar &amp;y, const btScalar &amp;z)</div><div class="ttdef"><b>Definition:</b> btVector3.h:320</div></div>
<div class="ttc" id="classbt_vector4_html_ab8f1a78ef86a9727b6f680d83e8e4259"><div class="ttname"><a href="classbt_vector4.html#ab8f1a78ef86a9727b6f680d83e8e4259">btVector4::btVector4</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector4()</div><div class="ttdef"><b>Definition:</b> btVector3.h:500</div></div>
<div class="ttc" id="bt_vector3_8h_html_a10bc669d0cd2db9595affab30e5532cf"><div class="ttname"><a href="bt_vector3_8h.html#a10bc669d0cd2db9595affab30e5532cf">length2</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar length2() const</div><div class="ttdoc">Return the length of the vector squared. </div><div class="ttdef"><b>Definition:</b> btVector3.h:129</div></div>
<div class="ttc" id="bt_vector3_8h_html_ae6b71ab121d96689e1ce5f8903f56258"><div class="ttname"><a href="bt_vector3_8h.html#ae6b71ab121d96689e1ce5f8903f56258">distance</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar distance(const btVector3 &amp;v) const</div><div class="ttdoc">Return the distance between the ends of this and another vector This is symantically treating the vec...</div><div class="ttdef"><b>Definition:</b> btVector3.h:475</div></div>
<div class="ttc" id="bt_vector3_8h_html_afc8f7d2e5d8f2ed1eab977727a6b3501"><div class="ttname"><a href="bt_vector3_8h.html#afc8f7d2e5d8f2ed1eab977727a6b3501">length</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar length() const</div><div class="ttdoc">Return the length of the vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:135</div></div>
<div class="ttc" id="bt_vector3_8h_html_a66e2fdfbabb28c8e9c4565f398e197fe"><div class="ttname"><a href="bt_vector3_8h.html#a66e2fdfbabb28c8e9c4565f398e197fe">triple</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar triple(const btVector3 &amp;v1, const btVector3 &amp;v2) const</div><div class="ttdef"><b>Definition:</b> btVector3.h:201</div></div>
<div class="ttc" id="bt_vector3_8h_html_a4241fc63918b2364ad15adcf42017554"><div class="ttname"><a href="bt_vector3_8h.html#a4241fc63918b2364ad15adcf42017554">deSerializeDouble</a></div><div class="ttdeci">SIMD_FORCE_INLINE void deSerializeDouble(const struct btVector3DoubleData &amp;dataIn)</div><div class="ttdef"><b>Definition:</b> btVector3.h:696</div></div>
<div class="ttc" id="bt_vector3_8h_html_a419978af43d009c4b093b0f4ccc9de08"><div class="ttname"><a href="bt_vector3_8h.html#a419978af43d009c4b093b0f4ccc9de08">z</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; z() const</div><div class="ttdoc">Return the z value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:279</div></div>
<div class="ttc" id="bt_vector3_8h_html_a2acb8d20d771dec7b7257886364c35b9"><div class="ttname"><a href="bt_vector3_8h.html#a2acb8d20d771dec7b7257886364c35b9">operator!=</a></div><div class="ttdeci">SIMD_FORCE_INLINE bool operator!=(const btVector3 &amp;other) const</div><div class="ttdef"><b>Definition:</b> btVector3.h:294</div></div>
<div class="ttc" id="bt_scalar_8h_html_a3a24ecdd029d38fef175bee5d965710a"><div class="ttname"><a href="bt_scalar_8h.html#a3a24ecdd029d38fef175bee5d965710a">BT_LARGE_FLOAT</a></div><div class="ttdeci">#define BT_LARGE_FLOAT</div><div class="ttdef"><b>Definition:</b> btScalar.h:210</div></div>
<div class="ttc" id="bt_vector3_8h_html_a0682ea634178928396d78f27c87aec07"><div class="ttname"><a href="bt_vector3_8h.html#a0682ea634178928396d78f27c87aec07">btPlaneSpace1</a></div><div class="ttdeci">SIMD_FORCE_INLINE void btPlaneSpace1(const T &amp;n, T &amp;p, T &amp;q)</div><div class="ttdef"><b>Definition:</b> btVector3.h:640</div></div>
<div class="ttc" id="bt_vector3_8h_html_a5a4be68dd97f1809e8220090e7b73e46"><div class="ttname"><a href="bt_vector3_8h.html#a5a4be68dd97f1809e8220090e7b73e46">setW</a></div><div class="ttdeci">SIMD_FORCE_INLINE void setW(btScalar w)</div><div class="ttdoc">Set the w value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:273</div></div>
<div class="ttc" id="bt_vector3_8h_html_a3570ef89f063fd0616ac57b1c4ae930e"><div class="ttname"><a href="bt_vector3_8h.html#a3570ef89f063fd0616ac57b1c4ae930e">w</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; w() const</div><div class="ttdoc">Return the w value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:281</div></div>
<div class="ttc" id="bt_vector3_8h_html_a895569a6d2cf658dbbbbb88c7d93f312"><div class="ttname"><a href="bt_vector3_8h.html#a895569a6d2cf658dbbbbb88c7d93f312">btAngle</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btAngle(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the angle between two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:442</div></div>
<div class="ttc" id="bt_vector3_8h_html_ad116b75e5135551c1335437e47fd8a3f"><div class="ttname"><a href="bt_vector3_8h.html#ad116b75e5135551c1335437e47fd8a3f">btVector3Data</a></div><div class="ttdeci">#define btVector3Data</div><div class="ttdef"><b>Definition:</b> btVector3.h:25</div></div>
<div class="ttc" id="bt_vector3_8h_html_a334ddc392fb6e14b8b9f5b5e4b94c794"><div class="ttname"><a href="bt_vector3_8h.html#a334ddc392fb6e14b8b9f5b5e4b94c794">getZ</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; getZ() const</div><div class="ttdoc">Return the z value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:265</div></div>
<div class="ttc" id="bt_scalar_8h_html_a6b200a8d26a49406ca13329be909ec10"><div class="ttname"><a href="bt_scalar_8h.html#a6b200a8d26a49406ca13329be909ec10">btSqrt</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btSqrt(btScalar y)</div><div class="ttdef"><b>Definition:</b> btScalar.h:258</div></div>
<div class="ttc" id="bt_vector3_8h_html_ada12e2c003a5b608ce5d9d384a7e0402"><div class="ttname"><a href="bt_vector3_8h.html#ada12e2c003a5b608ce5d9d384a7e0402">getY</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; getY() const</div><div class="ttdoc">Return the y value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:263</div></div>
<div class="ttc" id="classbt_vector4_html_ac0c0c1b24cc18d0ce62d7d6ce0ec226c"><div class="ttname"><a href="classbt_vector4.html#ac0c0c1b24cc18d0ce62d7d6ce0ec226c">btVector4::closestAxis4</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t closestAxis4() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:564</div></div>
<div class="ttc" id="bt_vector3_8h_html_acc751d47eebb95e8dd085b1e6533f0d2"><div class="ttname"><a href="bt_vector3_8h.html#acc751d47eebb95e8dd085b1e6533f0d2">isZero</a></div><div class="ttdeci">SIMD_FORCE_INLINE bool isZero() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:340</div></div>
<div class="ttc" id="bt_vector3_8h_html_ad41fea09dcee2db07c7a8a128749d42e"><div class="ttname"><a href="bt_vector3_8h.html#ad41fea09dcee2db07c7a8a128749d42e">distance2</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar distance2(const btVector3 &amp;v) const</div><div class="ttdoc">Return the distance squared between the ends of this and another vector This is symantically treating...</div><div class="ttdef"><b>Definition:</b> btVector3.h:470</div></div>
<div class="ttc" id="classbt_vector4_html"><div class="ttname"><a href="classbt_vector4.html">btVector4</a></div><div class="ttdef"><b>Definition:</b> btVector3.h:498</div></div>
<div class="ttc" id="bt_vector3_8h_html_aa0d71a601765b3ef7dc8c950c6ff762e"><div class="ttname"><a href="bt_vector3_8h.html#aa0d71a601765b3ef7dc8c950c6ff762e">cross</a></div><div class="ttdeci">SIMD_FORCE_INLINE btVector3 cross(const btVector3 &amp;v) const</div><div class="ttdoc">Return the cross product between this and another vector. </div><div class="ttdef"><b>Definition:</b> btVector3.h:193</div></div>
<div class="ttc" id="bt_vector3_8h_html_a85c2b2da56faf3927c22358361fce1ef"><div class="ttname"><a href="bt_vector3_8h.html#a85c2b2da56faf3927c22358361fce1ef">furthestAxis</a></div><div class="ttdeci">SIMD_FORCE_INLINE int32_t furthestAxis() const</div><div class="ttdef"><b>Definition:</b> btVector3.h:220</div></div>
<div class="ttc" id="bt_vector3_8h_html_a550dc4505b1f10c03a685705f41f4011"><div class="ttname"><a href="bt_vector3_8h.html#a550dc4505b1f10c03a685705f41f4011">btDot</a></div><div class="ttdeci">SIMD_FORCE_INLINE btScalar btDot(const btVector3 &amp;v1, const btVector3 &amp;v2)</div><div class="ttdoc">Return the dot product between two vectors. </div><div class="ttdef"><b>Definition:</b> btVector3.h:421</div></div>
<div class="ttc" id="bt_vector3_8h_html_aac64bbd7b5d79a37aaf8508838733456"><div class="ttname"><a href="bt_vector3_8h.html#aac64bbd7b5d79a37aaf8508838733456">getX</a></div><div class="ttdeci">SIMD_FORCE_INLINE const btScalar &amp; getX() const</div><div class="ttdoc">Return the x value. </div><div class="ttdef"><b>Definition:</b> btVector3.h:261</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div class="footer">
Copyright &copy; 2015-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a>
</div>
</body>
</html>