class_d_vec3.html 140 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=11"/>
  6. <meta name="generator" content="Doxygen 1.12.0"/>
  7. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  8. <title>Jolt Physics: DVec3 Class Reference</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <script type="text/javascript" src="clipboard.js"></script>
  13. <link href="navtree.css" rel="stylesheet" type="text/css"/>
  14. <script type="text/javascript" src="navtreedata.js"></script>
  15. <script type="text/javascript" src="navtree.js"></script>
  16. <script type="text/javascript" src="resize.js"></script>
  17. <script type="text/javascript" src="cookie.js"></script>
  18. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  19. <script type="text/javascript" src="search/searchdata.js"></script>
  20. <script type="text/javascript" src="search/search.js"></script>
  21. <script type="text/x-mathjax-config">
  22. MathJax.Hub.Config({
  23. extensions: ["tex2jax.js"],
  24. jax: ["input/TeX","output/HTML-CSS"],
  25. });
  26. </script>
  27. <script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
  28. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  29. </head>
  30. <body>
  31. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  32. <div id="titlearea">
  33. <table cellspacing="0" cellpadding="0">
  34. <tbody>
  35. <tr id="projectrow">
  36. <td id="projectlogo"><img alt="Logo" src="LogoSmall.png"/></td>
  37. <td id="projectalign">
  38. <div id="projectname">Jolt Physics
  39. </div>
  40. <div id="projectbrief">A multi core friendly Game Physics Engine</div>
  41. </td>
  42. </tr>
  43. </tbody>
  44. </table>
  45. </div>
  46. <!-- end header part -->
  47. <!-- Generated by Doxygen 1.12.0 -->
  48. <script type="text/javascript">
  49. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  50. var searchBox = new SearchBox("searchBox", "search/",'.html');
  51. /* @license-end */
  52. </script>
  53. <script type="text/javascript">
  54. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  55. $(function() { codefold.init(0); });
  56. /* @license-end */
  57. </script>
  58. <script type="text/javascript" src="menudata.js"></script>
  59. <script type="text/javascript" src="menu.js"></script>
  60. <script type="text/javascript">
  61. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  62. $(function() {
  63. initMenu('',true,false,'search.php','Search',true);
  64. $(function() { init_search(); });
  65. });
  66. /* @license-end */
  67. </script>
  68. <div id="main-nav"></div>
  69. </div><!-- top -->
  70. <div id="side-nav" class="ui-resizable side-nav-resizable">
  71. <div id="nav-tree">
  72. <div id="nav-tree-contents">
  73. <div id="nav-sync" class="sync"></div>
  74. </div>
  75. </div>
  76. <div id="splitbar" style="-moz-user-select:none;"
  77. class="ui-resizable-handle">
  78. </div>
  79. </div>
  80. <script type="text/javascript">
  81. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  82. $(function(){initNavTree('class_d_vec3.html',''); initResizable(true); });
  83. /* @license-end */
  84. </script>
  85. <div id="doc-content">
  86. <!-- window showing the filter options -->
  87. <div id="MSearchSelectWindow"
  88. onmouseover="return searchBox.OnSearchSelectShow()"
  89. onmouseout="return searchBox.OnSearchSelectHide()"
  90. onkeydown="return searchBox.OnSearchSelectKey(event)">
  91. </div>
  92. <!-- iframe showing the search results (closed by default) -->
  93. <div id="MSearchResultsWindow">
  94. <div id="MSearchResults">
  95. <div class="SRPage">
  96. <div id="SRIndex">
  97. <div id="SRResults"></div>
  98. <div class="SRStatus" id="Loading">Loading...</div>
  99. <div class="SRStatus" id="Searching">Searching...</div>
  100. <div class="SRStatus" id="NoMatches">No Matches</div>
  101. </div>
  102. </div>
  103. </div>
  104. </div>
  105. <div class="header">
  106. <div class="summary">
  107. <a href="#pub-types">Public Types</a> &#124;
  108. <a href="#pub-methods">Public Member Functions</a> &#124;
  109. <a href="#pub-static-methods">Static Public Member Functions</a> &#124;
  110. <a href="#pub-attribs">Public Attributes</a> &#124;
  111. <a href="#pub-static-attribs">Static Public Attributes</a> &#124;
  112. <a href="#friends">Friends</a> &#124;
  113. <a href="class_d_vec3-members.html">List of all members</a> </div>
  114. <div class="headertitle"><div class="title">DVec3 Class Reference</div></div>
  115. </div><!--header-->
  116. <div class="contents">
  117. <p><code>#include &lt;<a class="el" href="_d_vec3_8h_source.html">DVec3.h</a>&gt;</code></p>
  118. <table class="memberdecls">
  119. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
  120. Public Types</h2></td></tr>
  121. <tr class="memitem:ae955a8b286e5daaa80ca018afc4a2f92" id="r_ae955a8b286e5daaa80ca018afc4a2f92"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">Type</a> = struct { double mData[4]; }</td></tr>
  122. <tr class="separator:ae955a8b286e5daaa80ca018afc4a2f92"><td class="memSeparator" colspan="2">&#160;</td></tr>
  123. <tr class="memitem:a534f0bd3a829454ca3f6c00d60068b27" id="r_a534f0bd3a829454ca3f6c00d60068b27"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a534f0bd3a829454ca3f6c00d60068b27">TypeArg</a> = const <a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">Type</a> &amp;</td></tr>
  124. <tr class="separator:a534f0bd3a829454ca3f6c00d60068b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. <tr class="memitem:adb8357872b8bcac73ffb3c85bffa9f13" id="r_adb8357872b8bcac73ffb3c85bffa9f13"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adb8357872b8bcac73ffb3c85bffa9f13">ArgType</a> = <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td></tr>
  126. <tr class="separator:adb8357872b8bcac73ffb3c85bffa9f13"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. </table><table class="memberdecls">
  128. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
  129. Public Member Functions</h2></td></tr>
  130. <tr class="memitem:a8dee0ba62485a3b2fe924f1fa582c269" id="r_a8dee0ba62485a3b2fe924f1fa582c269"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8dee0ba62485a3b2fe924f1fa582c269">DVec3</a> ()=default</td></tr>
  131. <tr class="memdesc:a8dee0ba62485a3b2fe924f1fa582c269"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
  132. <tr class="separator:a8dee0ba62485a3b2fe924f1fa582c269"><td class="memSeparator" colspan="2">&#160;</td></tr>
  133. <tr class="memitem:ae4beefad0c345ffc3516f9f2dcb7abba" id="r_ae4beefad0c345ffc3516f9f2dcb7abba"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae4beefad0c345ffc3516f9f2dcb7abba">DVec3</a> (const <a class="el" href="class_d_vec3.html">DVec3</a> &amp;inRHS)=default</td></tr>
  134. <tr class="separator:ae4beefad0c345ffc3516f9f2dcb7abba"><td class="memSeparator" colspan="2">&#160;</td></tr>
  135. <tr class="memitem:a90e7c899c1d5f2dddc3f332ba62c8de1" id="r_a90e7c899c1d5f2dddc3f332ba62c8de1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a90e7c899c1d5f2dddc3f332ba62c8de1">operator=</a> (const <a class="el" href="class_d_vec3.html">DVec3</a> &amp;inRHS)=default</td></tr>
  136. <tr class="separator:a90e7c899c1d5f2dddc3f332ba62c8de1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. <tr class="memitem:aae9ec5d5349d1d8139cc4eb4943187f9" id="r_aae9ec5d5349d1d8139cc4eb4943187f9"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aae9ec5d5349d1d8139cc4eb4943187f9">DVec3</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inRHS)</td></tr>
  138. <tr class="separator:aae9ec5d5349d1d8139cc4eb4943187f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  139. <tr class="memitem:aab5b5eca15f3f129ff6781cb0e2c27a7" id="r_aab5b5eca15f3f129ff6781cb0e2c27a7"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aab5b5eca15f3f129ff6781cb0e2c27a7">DVec3</a> (<a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inRHS)</td></tr>
  140. <tr class="separator:aab5b5eca15f3f129ff6781cb0e2c27a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:a286758dc45b39340db99639276d229a6" id="r_a286758dc45b39340db99639276d229a6"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a286758dc45b39340db99639276d229a6">DVec3</a> (<a class="el" href="#a534f0bd3a829454ca3f6c00d60068b27">TypeArg</a> inRHS)</td></tr>
  142. <tr class="separator:a286758dc45b39340db99639276d229a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  143. <tr class="memitem:ac908a3c045ea6d465602de318ccc2423" id="r_ac908a3c045ea6d465602de318ccc2423"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac908a3c045ea6d465602de318ccc2423">DVec3</a> (double inX, double inY, double inZ)</td></tr>
  144. <tr class="memdesc:ac908a3c045ea6d465602de318ccc2423"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a vector from 3 components. <br /></td></tr>
  145. <tr class="separator:ac908a3c045ea6d465602de318ccc2423"><td class="memSeparator" colspan="2">&#160;</td></tr>
  146. <tr class="memitem:a14bb3fa7ea76c4c32d2ff6066a8e0732" id="r_a14bb3fa7ea76c4c32d2ff6066a8e0732"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a14bb3fa7ea76c4c32d2ff6066a8e0732">DVec3</a> (const <a class="el" href="class_double3.html">Double3</a> &amp;inV)</td></tr>
  147. <tr class="memdesc:a14bb3fa7ea76c4c32d2ff6066a8e0732"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load 3 doubles from memory. <br /></td></tr>
  148. <tr class="separator:a14bb3fa7ea76c4c32d2ff6066a8e0732"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:a660cd286454202510b44fa18c2283d4d" id="r_a660cd286454202510b44fa18c2283d4d"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a660cd286454202510b44fa18c2283d4d">StoreDouble3</a> (<a class="el" href="class_double3.html">Double3</a> *outV) const</td></tr>
  150. <tr class="memdesc:a660cd286454202510b44fa18c2283d4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store 3 doubles to memory. <br /></td></tr>
  151. <tr class="separator:a660cd286454202510b44fa18c2283d4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. <tr class="memitem:aea862e04fd4041a3d10035275fe995e0" id="r_aea862e04fd4041a3d10035275fe995e0"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aea862e04fd4041a3d10035275fe995e0">operator Vec3</a> () const</td></tr>
  153. <tr class="memdesc:aea862e04fd4041a3d10035275fe995e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to float vector 3 rounding to nearest. <br /></td></tr>
  154. <tr class="separator:aea862e04fd4041a3d10035275fe995e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  155. <tr class="memitem:ae4f056668680a0741aeda962d0dc794c" id="r_ae4f056668680a0741aeda962d0dc794c"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae4f056668680a0741aeda962d0dc794c">PrepareRoundToZero</a> () const</td></tr>
  156. <tr class="memdesc:ae4f056668680a0741aeda962d0dc794c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prepare to convert to float vector 3 rounding towards zero (returns <a class="el" href="class_d_vec3.html">DVec3</a> that can be converted to a <a class="el" href="class_vec3.html">Vec3</a> to get the rounding) <br /></td></tr>
  157. <tr class="separator:ae4f056668680a0741aeda962d0dc794c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  158. <tr class="memitem:ab9a393f086d70f1a5a42e20a28f6278b" id="r_ab9a393f086d70f1a5a42e20a28f6278b"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab9a393f086d70f1a5a42e20a28f6278b">PrepareRoundToInf</a> () const</td></tr>
  159. <tr class="memdesc:ab9a393f086d70f1a5a42e20a28f6278b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prepare to convert to float vector 3 rounding towards positive/negative inf (returns <a class="el" href="class_d_vec3.html">DVec3</a> that can be converted to a <a class="el" href="class_vec3.html">Vec3</a> to get the rounding) <br /></td></tr>
  160. <tr class="separator:ab9a393f086d70f1a5a42e20a28f6278b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  161. <tr class="memitem:a10a315fe487a61ec9fd93810a18477f5" id="r_a10a315fe487a61ec9fd93810a18477f5"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a10a315fe487a61ec9fd93810a18477f5">ToVec3RoundDown</a> () const</td></tr>
  162. <tr class="memdesc:a10a315fe487a61ec9fd93810a18477f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to float vector 3 rounding down. <br /></td></tr>
  163. <tr class="separator:a10a315fe487a61ec9fd93810a18477f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  164. <tr class="memitem:a825111b9afec36c79cfc63fa855f5cb1" id="r_a825111b9afec36c79cfc63fa855f5cb1"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a825111b9afec36c79cfc63fa855f5cb1">ToVec3RoundUp</a> () const</td></tr>
  165. <tr class="memdesc:a825111b9afec36c79cfc63fa855f5cb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to float vector 3 rounding up. <br /></td></tr>
  166. <tr class="separator:a825111b9afec36c79cfc63fa855f5cb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:a11971a6122b035009707efe51f5a1169" id="r_a11971a6122b035009707efe51f5a1169"><td class="memItemLeft" align="right" valign="top">JPH_INLINE int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a11971a6122b035009707efe51f5a1169">GetTrues</a> () const</td></tr>
  168. <tr class="memdesc:a11971a6122b035009707efe51f5a1169"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store if X is true in bit 0, Y in bit 1, Z in bit 2 and W in bit 3 (true is when highest bit of component is set) <br /></td></tr>
  169. <tr class="separator:a11971a6122b035009707efe51f5a1169"><td class="memSeparator" colspan="2">&#160;</td></tr>
  170. <tr class="memitem:a0f06147fe78e9b54a1865579401fe97f" id="r_a0f06147fe78e9b54a1865579401fe97f"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0f06147fe78e9b54a1865579401fe97f">TestAnyTrue</a> () const</td></tr>
  171. <tr class="memdesc:a0f06147fe78e9b54a1865579401fe97f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if any of the components are true (true is when highest bit of component is set) <br /></td></tr>
  172. <tr class="separator:a0f06147fe78e9b54a1865579401fe97f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  173. <tr class="memitem:a7c7ae9dc9ebecde0e653c872fd6aad58" id="r_a7c7ae9dc9ebecde0e653c872fd6aad58"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7c7ae9dc9ebecde0e653c872fd6aad58">TestAllTrue</a> () const</td></tr>
  174. <tr class="memdesc:a7c7ae9dc9ebecde0e653c872fd6aad58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if all components are true (true is when highest bit of component is set) <br /></td></tr>
  175. <tr class="separator:a7c7ae9dc9ebecde0e653c872fd6aad58"><td class="memSeparator" colspan="2">&#160;</td></tr>
  176. <tr class="memitem:afb533f92f55c1e9dc3e7eece73e87dda" id="r_afb533f92f55c1e9dc3e7eece73e87dda"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afb533f92f55c1e9dc3e7eece73e87dda">GetX</a> () const</td></tr>
  177. <tr class="memdesc:afb533f92f55c1e9dc3e7eece73e87dda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get individual components. <br /></td></tr>
  178. <tr class="separator:afb533f92f55c1e9dc3e7eece73e87dda"><td class="memSeparator" colspan="2">&#160;</td></tr>
  179. <tr class="memitem:ad5aa83813d9db92bd0f04610ff6da1d4" id="r_ad5aa83813d9db92bd0f04610ff6da1d4"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad5aa83813d9db92bd0f04610ff6da1d4">GetY</a> () const</td></tr>
  180. <tr class="separator:ad5aa83813d9db92bd0f04610ff6da1d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  181. <tr class="memitem:a829a6fd58f3d3bd2da8f4f56f09df728" id="r_a829a6fd58f3d3bd2da8f4f56f09df728"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a829a6fd58f3d3bd2da8f4f56f09df728">GetZ</a> () const</td></tr>
  182. <tr class="separator:a829a6fd58f3d3bd2da8f4f56f09df728"><td class="memSeparator" colspan="2">&#160;</td></tr>
  183. <tr class="memitem:af2ffc0234f93a9ba535204d9b35ecb8f" id="r_af2ffc0234f93a9ba535204d9b35ecb8f"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af2ffc0234f93a9ba535204d9b35ecb8f">SetX</a> (double inX)</td></tr>
  184. <tr class="memdesc:af2ffc0234f93a9ba535204d9b35ecb8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set individual components. <br /></td></tr>
  185. <tr class="separator:af2ffc0234f93a9ba535204d9b35ecb8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  186. <tr class="memitem:a7a23eb2bdff0ab56356796bd6335d1a4" id="r_a7a23eb2bdff0ab56356796bd6335d1a4"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7a23eb2bdff0ab56356796bd6335d1a4">SetY</a> (double inY)</td></tr>
  187. <tr class="separator:a7a23eb2bdff0ab56356796bd6335d1a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  188. <tr class="memitem:ac180ba3a4c610e3ae77f3acfdff4139b" id="r_ac180ba3a4c610e3ae77f3acfdff4139b"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac180ba3a4c610e3ae77f3acfdff4139b">SetZ</a> (double inZ)</td></tr>
  189. <tr class="separator:ac180ba3a4c610e3ae77f3acfdff4139b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  190. <tr class="memitem:a6673601fc4d03869820519fa95cb5ed1" id="r_a6673601fc4d03869820519fa95cb5ed1"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6673601fc4d03869820519fa95cb5ed1">Set</a> (double inX, double inY, double inZ)</td></tr>
  191. <tr class="memdesc:a6673601fc4d03869820519fa95cb5ed1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set all components. <br /></td></tr>
  192. <tr class="separator:a6673601fc4d03869820519fa95cb5ed1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  193. <tr class="memitem:a6cdaec58545b032bd9c73e5da12cc50a" id="r_a6cdaec58545b032bd9c73e5da12cc50a"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6cdaec58545b032bd9c73e5da12cc50a">operator[]</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inCoordinate) const</td></tr>
  194. <tr class="memdesc:a6cdaec58545b032bd9c73e5da12cc50a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get double component by index. <br /></td></tr>
  195. <tr class="separator:a6cdaec58545b032bd9c73e5da12cc50a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  196. <tr class="memitem:a5563e51b263bc4c08fcfbc2babd3a7a5" id="r_a5563e51b263bc4c08fcfbc2babd3a7a5"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5563e51b263bc4c08fcfbc2babd3a7a5">SetComponent</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inCoordinate, double inValue)</td></tr>
  197. <tr class="memdesc:a5563e51b263bc4c08fcfbc2babd3a7a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set double component by index. <br /></td></tr>
  198. <tr class="separator:a5563e51b263bc4c08fcfbc2babd3a7a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  199. <tr class="memitem:af9f3df26312b07df5e6ea770e250e5bf" id="r_af9f3df26312b07df5e6ea770e250e5bf"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af9f3df26312b07df5e6ea770e250e5bf">operator==</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  200. <tr class="memdesc:af9f3df26312b07df5e6ea770e250e5bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Comparison. <br /></td></tr>
  201. <tr class="separator:af9f3df26312b07df5e6ea770e250e5bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  202. <tr class="memitem:afcf4835749ee0cf9dffcb3d02822c198" id="r_afcf4835749ee0cf9dffcb3d02822c198"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afcf4835749ee0cf9dffcb3d02822c198">operator!=</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  203. <tr class="separator:afcf4835749ee0cf9dffcb3d02822c198"><td class="memSeparator" colspan="2">&#160;</td></tr>
  204. <tr class="memitem:a4841bd14fcbce5a9a03edde10d9c6b30" id="r_a4841bd14fcbce5a9a03edde10d9c6b30"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4841bd14fcbce5a9a03edde10d9c6b30">IsClose</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2, double inMaxDistSq=1.0e-24) const</td></tr>
  205. <tr class="memdesc:a4841bd14fcbce5a9a03edde10d9c6b30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if two vectors are close. <br /></td></tr>
  206. <tr class="separator:a4841bd14fcbce5a9a03edde10d9c6b30"><td class="memSeparator" colspan="2">&#160;</td></tr>
  207. <tr class="memitem:aed8a5c005467d9089c5e2397529a1c53" id="r_aed8a5c005467d9089c5e2397529a1c53"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aed8a5c005467d9089c5e2397529a1c53">IsNearZero</a> (double inMaxDistSq=1.0e-24) const</td></tr>
  208. <tr class="memdesc:aed8a5c005467d9089c5e2397529a1c53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if vector is near zero. <br /></td></tr>
  209. <tr class="separator:aed8a5c005467d9089c5e2397529a1c53"><td class="memSeparator" colspan="2">&#160;</td></tr>
  210. <tr class="memitem:a4f71719e4f963c925c4981ea049c3f15" id="r_a4f71719e4f963c925c4981ea049c3f15"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4f71719e4f963c925c4981ea049c3f15">IsNormalized</a> (double inTolerance=1.0e-12) const</td></tr>
  211. <tr class="memdesc:a4f71719e4f963c925c4981ea049c3f15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if vector is normalized. <br /></td></tr>
  212. <tr class="separator:a4f71719e4f963c925c4981ea049c3f15"><td class="memSeparator" colspan="2">&#160;</td></tr>
  213. <tr class="memitem:a8215efb6695dc1ff3d1d3c6625bfb977" id="r_a8215efb6695dc1ff3d1d3c6625bfb977"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8215efb6695dc1ff3d1d3c6625bfb977">IsNaN</a> () const</td></tr>
  214. <tr class="memdesc:a8215efb6695dc1ff3d1d3c6625bfb977"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if vector contains NaN elements. <br /></td></tr>
  215. <tr class="separator:a8215efb6695dc1ff3d1d3c6625bfb977"><td class="memSeparator" colspan="2">&#160;</td></tr>
  216. <tr class="memitem:a407ecd0e3be7e4f60cd02c4e47ef5adb" id="r_a407ecd0e3be7e4f60cd02c4e47ef5adb"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a407ecd0e3be7e4f60cd02c4e47ef5adb">operator*</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  217. <tr class="memdesc:a407ecd0e3be7e4f60cd02c4e47ef5adb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply two double vectors (component wise) <br /></td></tr>
  218. <tr class="separator:a407ecd0e3be7e4f60cd02c4e47ef5adb"><td class="memSeparator" colspan="2">&#160;</td></tr>
  219. <tr class="memitem:af4b10fe57b6cb3e07ebd55c59054d213" id="r_af4b10fe57b6cb3e07ebd55c59054d213"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af4b10fe57b6cb3e07ebd55c59054d213">operator*</a> (double inV2) const</td></tr>
  220. <tr class="memdesc:af4b10fe57b6cb3e07ebd55c59054d213"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector with double. <br /></td></tr>
  221. <tr class="separator:af4b10fe57b6cb3e07ebd55c59054d213"><td class="memSeparator" colspan="2">&#160;</td></tr>
  222. <tr class="memitem:a98c87bc69aa4aaf5efff2f7371026213" id="r_a98c87bc69aa4aaf5efff2f7371026213"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a98c87bc69aa4aaf5efff2f7371026213">operator/</a> (double inV2) const</td></tr>
  223. <tr class="memdesc:a98c87bc69aa4aaf5efff2f7371026213"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide vector by double. <br /></td></tr>
  224. <tr class="separator:a98c87bc69aa4aaf5efff2f7371026213"><td class="memSeparator" colspan="2">&#160;</td></tr>
  225. <tr class="memitem:a1dc42bd495d9c8b63a856a1d516e4365" id="r_a1dc42bd495d9c8b63a856a1d516e4365"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1dc42bd495d9c8b63a856a1d516e4365">operator*=</a> (double inV2)</td></tr>
  226. <tr class="memdesc:a1dc42bd495d9c8b63a856a1d516e4365"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector with double. <br /></td></tr>
  227. <tr class="separator:a1dc42bd495d9c8b63a856a1d516e4365"><td class="memSeparator" colspan="2">&#160;</td></tr>
  228. <tr class="memitem:a9e5a82ae492dbea121d220ed21fbd503" id="r_a9e5a82ae492dbea121d220ed21fbd503"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9e5a82ae492dbea121d220ed21fbd503">operator*=</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  229. <tr class="memdesc:a9e5a82ae492dbea121d220ed21fbd503"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector with vector. <br /></td></tr>
  230. <tr class="separator:a9e5a82ae492dbea121d220ed21fbd503"><td class="memSeparator" colspan="2">&#160;</td></tr>
  231. <tr class="memitem:ac4311882ae51a22074b22caa012fb600" id="r_ac4311882ae51a22074b22caa012fb600"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac4311882ae51a22074b22caa012fb600">operator/=</a> (double inV2)</td></tr>
  232. <tr class="memdesc:ac4311882ae51a22074b22caa012fb600"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide vector by double. <br /></td></tr>
  233. <tr class="separator:ac4311882ae51a22074b22caa012fb600"><td class="memSeparator" colspan="2">&#160;</td></tr>
  234. <tr class="memitem:a40e55c7777c00682e04610c67101d659" id="r_a40e55c7777c00682e04610c67101d659"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a40e55c7777c00682e04610c67101d659">operator+</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV2) const</td></tr>
  235. <tr class="memdesc:a40e55c7777c00682e04610c67101d659"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add two vectors (component wise) <br /></td></tr>
  236. <tr class="separator:a40e55c7777c00682e04610c67101d659"><td class="memSeparator" colspan="2">&#160;</td></tr>
  237. <tr class="memitem:ae931145b41d6b5db001e40bd014bb183" id="r_ae931145b41d6b5db001e40bd014bb183"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae931145b41d6b5db001e40bd014bb183">operator+</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  238. <tr class="memdesc:ae931145b41d6b5db001e40bd014bb183"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add two double vectors (component wise) <br /></td></tr>
  239. <tr class="separator:ae931145b41d6b5db001e40bd014bb183"><td class="memSeparator" colspan="2">&#160;</td></tr>
  240. <tr class="memitem:ac071add2c7d9a00bd3f4342198e5aca2" id="r_ac071add2c7d9a00bd3f4342198e5aca2"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac071add2c7d9a00bd3f4342198e5aca2">operator+=</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV2)</td></tr>
  241. <tr class="memdesc:ac071add2c7d9a00bd3f4342198e5aca2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add two vectors (component wise) <br /></td></tr>
  242. <tr class="separator:ac071add2c7d9a00bd3f4342198e5aca2"><td class="memSeparator" colspan="2">&#160;</td></tr>
  243. <tr class="memitem:aebfafc1078630f38852907c0be0e4a76" id="r_aebfafc1078630f38852907c0be0e4a76"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aebfafc1078630f38852907c0be0e4a76">operator+=</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  244. <tr class="memdesc:aebfafc1078630f38852907c0be0e4a76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add two double vectors (component wise) <br /></td></tr>
  245. <tr class="separator:aebfafc1078630f38852907c0be0e4a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
  246. <tr class="memitem:a7e0f61fe354f1886485f0814a8881cd0" id="r_a7e0f61fe354f1886485f0814a8881cd0"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7e0f61fe354f1886485f0814a8881cd0">operator-</a> () const</td></tr>
  247. <tr class="memdesc:a7e0f61fe354f1886485f0814a8881cd0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Negate. <br /></td></tr>
  248. <tr class="separator:a7e0f61fe354f1886485f0814a8881cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  249. <tr class="memitem:a89b578e95bc0e6a1f97d28afc66256fd" id="r_a89b578e95bc0e6a1f97d28afc66256fd"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a89b578e95bc0e6a1f97d28afc66256fd">operator-</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV2) const</td></tr>
  250. <tr class="memdesc:a89b578e95bc0e6a1f97d28afc66256fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtract two vectors (component wise) <br /></td></tr>
  251. <tr class="separator:a89b578e95bc0e6a1f97d28afc66256fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
  252. <tr class="memitem:a4a2fd5bf39a1cad1a63913ee8f54dc9c" id="r_a4a2fd5bf39a1cad1a63913ee8f54dc9c"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4a2fd5bf39a1cad1a63913ee8f54dc9c">operator-</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  253. <tr class="memdesc:a4a2fd5bf39a1cad1a63913ee8f54dc9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtract two double vectors (component wise) <br /></td></tr>
  254. <tr class="separator:a4a2fd5bf39a1cad1a63913ee8f54dc9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  255. <tr class="memitem:adefdf792db358b7bc0f9259c3b685574" id="r_adefdf792db358b7bc0f9259c3b685574"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adefdf792db358b7bc0f9259c3b685574">operator-=</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV2)</td></tr>
  256. <tr class="memdesc:adefdf792db358b7bc0f9259c3b685574"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtract two vectors (component wise) <br /></td></tr>
  257. <tr class="separator:adefdf792db358b7bc0f9259c3b685574"><td class="memSeparator" colspan="2">&#160;</td></tr>
  258. <tr class="memitem:a9913eae45efd88f12df0d709d719e283" id="r_a9913eae45efd88f12df0d709d719e283"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9913eae45efd88f12df0d709d719e283">operator-=</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  259. <tr class="memdesc:a9913eae45efd88f12df0d709d719e283"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subtract two vectors (component wise) <br /></td></tr>
  260. <tr class="separator:a9913eae45efd88f12df0d709d719e283"><td class="memSeparator" colspan="2">&#160;</td></tr>
  261. <tr class="memitem:a80844acdcc20d872097060f18a49dfae" id="r_a80844acdcc20d872097060f18a49dfae"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a80844acdcc20d872097060f18a49dfae">operator/</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  262. <tr class="memdesc:a80844acdcc20d872097060f18a49dfae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide (component wise) <br /></td></tr>
  263. <tr class="separator:a80844acdcc20d872097060f18a49dfae"><td class="memSeparator" colspan="2">&#160;</td></tr>
  264. <tr class="memitem:a1df9be6cc25048acd0c184f60535189b" id="r_a1df9be6cc25048acd0c184f60535189b"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1df9be6cc25048acd0c184f60535189b">Abs</a> () const</td></tr>
  265. <tr class="memdesc:a1df9be6cc25048acd0c184f60535189b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the absolute value of each of the components. <br /></td></tr>
  266. <tr class="separator:a1df9be6cc25048acd0c184f60535189b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  267. <tr class="memitem:ae4f3e3231039ea4fb254150a32a2b679" id="r_ae4f3e3231039ea4fb254150a32a2b679"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae4f3e3231039ea4fb254150a32a2b679">Reciprocal</a> () const</td></tr>
  268. <tr class="memdesc:ae4f3e3231039ea4fb254150a32a2b679"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reciprocal vector (1 / value) for each of the components. <br /></td></tr>
  269. <tr class="separator:ae4f3e3231039ea4fb254150a32a2b679"><td class="memSeparator" colspan="2">&#160;</td></tr>
  270. <tr class="memitem:adcd2e18b680e40bbd4ac71c6b0463bd3" id="r_adcd2e18b680e40bbd4ac71c6b0463bd3"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adcd2e18b680e40bbd4ac71c6b0463bd3">Cross</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  271. <tr class="memdesc:adcd2e18b680e40bbd4ac71c6b0463bd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cross product. <br /></td></tr>
  272. <tr class="separator:adcd2e18b680e40bbd4ac71c6b0463bd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  273. <tr class="memitem:aa0634b13605c6233650f7ccac571be75" id="r_aa0634b13605c6233650f7ccac571be75"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa0634b13605c6233650f7ccac571be75">Dot</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2) const</td></tr>
  274. <tr class="memdesc:aa0634b13605c6233650f7ccac571be75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dot product. <br /></td></tr>
  275. <tr class="separator:aa0634b13605c6233650f7ccac571be75"><td class="memSeparator" colspan="2">&#160;</td></tr>
  276. <tr class="memitem:a95fe01b11cc216e8d718d1122392a018" id="r_a95fe01b11cc216e8d718d1122392a018"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a95fe01b11cc216e8d718d1122392a018">LengthSq</a> () const</td></tr>
  277. <tr class="memdesc:a95fe01b11cc216e8d718d1122392a018"><td class="mdescLeft">&#160;</td><td class="mdescRight">Squared length of vector. <br /></td></tr>
  278. <tr class="separator:a95fe01b11cc216e8d718d1122392a018"><td class="memSeparator" colspan="2">&#160;</td></tr>
  279. <tr class="memitem:a7d1feb75db248b954ef774ee33e46014" id="r_a7d1feb75db248b954ef774ee33e46014"><td class="memItemLeft" align="right" valign="top">JPH_INLINE double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7d1feb75db248b954ef774ee33e46014">Length</a> () const</td></tr>
  280. <tr class="memdesc:a7d1feb75db248b954ef774ee33e46014"><td class="mdescLeft">&#160;</td><td class="mdescRight">Length of vector. <br /></td></tr>
  281. <tr class="separator:a7d1feb75db248b954ef774ee33e46014"><td class="memSeparator" colspan="2">&#160;</td></tr>
  282. <tr class="memitem:a98414033d7ebc2af3b1e950f378a77b7" id="r_a98414033d7ebc2af3b1e950f378a77b7"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a98414033d7ebc2af3b1e950f378a77b7">Normalized</a> () const</td></tr>
  283. <tr class="memdesc:a98414033d7ebc2af3b1e950f378a77b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalize vector. <br /></td></tr>
  284. <tr class="separator:a98414033d7ebc2af3b1e950f378a77b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  285. <tr class="memitem:a286f436889f911c0fcf7f58692bb039d" id="r_a286f436889f911c0fcf7f58692bb039d"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a286f436889f911c0fcf7f58692bb039d">Sqrt</a> () const</td></tr>
  286. <tr class="memdesc:a286f436889f911c0fcf7f58692bb039d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Component wise square root. <br /></td></tr>
  287. <tr class="separator:a286f436889f911c0fcf7f58692bb039d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  288. <tr class="memitem:a298f2bc29cc4d55a9f9d30a9512cada3" id="r_a298f2bc29cc4d55a9f9d30a9512cada3"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a298f2bc29cc4d55a9f9d30a9512cada3">GetSign</a> () const</td></tr>
  289. <tr class="memdesc:a298f2bc29cc4d55a9f9d30a9512cada3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get vector that contains the sign of each element (returns 1 if positive, -1 if negative) <br /></td></tr>
  290. <tr class="separator:a298f2bc29cc4d55a9f9d30a9512cada3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  291. <tr class="memitem:a95c9295adcf9cea2990be8d4c6b71891" id="r_a95c9295adcf9cea2990be8d4c6b71891"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a95c9295adcf9cea2990be8d4c6b71891">CheckW</a> () const</td></tr>
  292. <tr class="memdesc:a95c9295adcf9cea2990be8d4c6b71891"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal helper function that checks that W is equal to Z, so e.g. dividing by it should not generate div by 0. <br /></td></tr>
  293. <tr class="separator:a95c9295adcf9cea2990be8d4c6b71891"><td class="memSeparator" colspan="2">&#160;</td></tr>
  294. </table><table class="memberdecls">
  295. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
  296. Static Public Member Functions</h2></td></tr>
  297. <tr class="memitem:a7b43808613023c4439455b887c566246" id="r_a7b43808613023c4439455b887c566246"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7b43808613023c4439455b887c566246">sZero</a> ()</td></tr>
  298. <tr class="memdesc:a7b43808613023c4439455b887c566246"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_vector.html" title="Templatized vector class.">Vector</a> with all zeros. <br /></td></tr>
  299. <tr class="separator:a7b43808613023c4439455b887c566246"><td class="memSeparator" colspan="2">&#160;</td></tr>
  300. <tr class="memitem:a35ef19e9f75acca4eae99f2849f347f9" id="r_a35ef19e9f75acca4eae99f2849f347f9"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a35ef19e9f75acca4eae99f2849f347f9">sOne</a> ()</td></tr>
  301. <tr class="memdesc:a35ef19e9f75acca4eae99f2849f347f9"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_vector.html" title="Templatized vector class.">Vector</a> with all ones. <br /></td></tr>
  302. <tr class="separator:a35ef19e9f75acca4eae99f2849f347f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  303. <tr class="memitem:a6c8bccdc7a9dfb0897f00b73284db110" id="r_a6c8bccdc7a9dfb0897f00b73284db110"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6c8bccdc7a9dfb0897f00b73284db110">sAxisX</a> ()</td></tr>
  304. <tr class="memdesc:a6c8bccdc7a9dfb0897f00b73284db110"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vectors with the principal axis. <br /></td></tr>
  305. <tr class="separator:a6c8bccdc7a9dfb0897f00b73284db110"><td class="memSeparator" colspan="2">&#160;</td></tr>
  306. <tr class="memitem:a1af180166bc463c9b4c4aa2997399f17" id="r_a1af180166bc463c9b4c4aa2997399f17"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1af180166bc463c9b4c4aa2997399f17">sAxisY</a> ()</td></tr>
  307. <tr class="separator:a1af180166bc463c9b4c4aa2997399f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
  308. <tr class="memitem:aa3bc7e15bfe4452110934ef29c984626" id="r_aa3bc7e15bfe4452110934ef29c984626"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa3bc7e15bfe4452110934ef29c984626">sAxisZ</a> ()</td></tr>
  309. <tr class="separator:aa3bc7e15bfe4452110934ef29c984626"><td class="memSeparator" colspan="2">&#160;</td></tr>
  310. <tr class="memitem:aacd317439be46d73edb9c0272b9445d6" id="r_aacd317439be46d73edb9c0272b9445d6"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aacd317439be46d73edb9c0272b9445d6">sReplicate</a> (double inV)</td></tr>
  311. <tr class="memdesc:aacd317439be46d73edb9c0272b9445d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replicate inV across all components. <br /></td></tr>
  312. <tr class="separator:aacd317439be46d73edb9c0272b9445d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  313. <tr class="memitem:a597fd4ed4cbf7af0c17bbd374afb4727" id="r_a597fd4ed4cbf7af0c17bbd374afb4727"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a597fd4ed4cbf7af0c17bbd374afb4727">sNaN</a> ()</td></tr>
  314. <tr class="memdesc:a597fd4ed4cbf7af0c17bbd374afb4727"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_vector.html" title="Templatized vector class.">Vector</a> with all NaN's. <br /></td></tr>
  315. <tr class="separator:a597fd4ed4cbf7af0c17bbd374afb4727"><td class="memSeparator" colspan="2">&#160;</td></tr>
  316. <tr class="memitem:ac19d415377cf91a317d29cc99d319134" id="r_ac19d415377cf91a317d29cc99d319134"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac19d415377cf91a317d29cc99d319134">sLoadDouble3Unsafe</a> (const <a class="el" href="class_double3.html">Double3</a> &amp;inV)</td></tr>
  317. <tr class="memdesc:ac19d415377cf91a317d29cc99d319134"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load 3 doubles from memory (reads 64 bits extra which it doesn't use) <br /></td></tr>
  318. <tr class="separator:ac19d415377cf91a317d29cc99d319134"><td class="memSeparator" colspan="2">&#160;</td></tr>
  319. <tr class="memitem:a110aacf67e0556aaf2fdad2e86578715" id="r_a110aacf67e0556aaf2fdad2e86578715"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a110aacf67e0556aaf2fdad2e86578715">sMin</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  320. <tr class="memdesc:a110aacf67e0556aaf2fdad2e86578715"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the minimum value of each of the components. <br /></td></tr>
  321. <tr class="separator:a110aacf67e0556aaf2fdad2e86578715"><td class="memSeparator" colspan="2">&#160;</td></tr>
  322. <tr class="memitem:a034bd1560d516612ff248c5b6eb5f245" id="r_a034bd1560d516612ff248c5b6eb5f245"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a034bd1560d516612ff248c5b6eb5f245">sMax</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  323. <tr class="memdesc:a034bd1560d516612ff248c5b6eb5f245"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the maximum of each of the components. <br /></td></tr>
  324. <tr class="separator:a034bd1560d516612ff248c5b6eb5f245"><td class="memSeparator" colspan="2">&#160;</td></tr>
  325. <tr class="memitem:a10e8bf45f37556208decfad2ff76de67" id="r_a10e8bf45f37556208decfad2ff76de67"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a10e8bf45f37556208decfad2ff76de67">sClamp</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inMin, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inMax)</td></tr>
  326. <tr class="memdesc:a10e8bf45f37556208decfad2ff76de67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clamp a vector between min and max (component wise) <br /></td></tr>
  327. <tr class="separator:a10e8bf45f37556208decfad2ff76de67"><td class="memSeparator" colspan="2">&#160;</td></tr>
  328. <tr class="memitem:ae56eb5609346a7b025d1c6261baf54b7" id="r_ae56eb5609346a7b025d1c6261baf54b7"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae56eb5609346a7b025d1c6261baf54b7">sEquals</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  329. <tr class="memdesc:ae56eb5609346a7b025d1c6261baf54b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Equals (component wise) <br /></td></tr>
  330. <tr class="separator:ae56eb5609346a7b025d1c6261baf54b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  331. <tr class="memitem:a0055c9056c703cfb53e306a702843edb" id="r_a0055c9056c703cfb53e306a702843edb"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0055c9056c703cfb53e306a702843edb">sLess</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  332. <tr class="memdesc:a0055c9056c703cfb53e306a702843edb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Less than (component wise) <br /></td></tr>
  333. <tr class="separator:a0055c9056c703cfb53e306a702843edb"><td class="memSeparator" colspan="2">&#160;</td></tr>
  334. <tr class="memitem:aaf7417eac9dc51d1786a791ca94f4556" id="r_aaf7417eac9dc51d1786a791ca94f4556"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aaf7417eac9dc51d1786a791ca94f4556">sLessOrEqual</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  335. <tr class="memdesc:aaf7417eac9dc51d1786a791ca94f4556"><td class="mdescLeft">&#160;</td><td class="mdescRight">Less than or equal (component wise) <br /></td></tr>
  336. <tr class="separator:aaf7417eac9dc51d1786a791ca94f4556"><td class="memSeparator" colspan="2">&#160;</td></tr>
  337. <tr class="memitem:a60c87539167a77817e6298bd8cdb1386" id="r_a60c87539167a77817e6298bd8cdb1386"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a60c87539167a77817e6298bd8cdb1386">sGreater</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  338. <tr class="memdesc:a60c87539167a77817e6298bd8cdb1386"><td class="mdescLeft">&#160;</td><td class="mdescRight">Greater than (component wise) <br /></td></tr>
  339. <tr class="separator:a60c87539167a77817e6298bd8cdb1386"><td class="memSeparator" colspan="2">&#160;</td></tr>
  340. <tr class="memitem:a382ba05ac29dcc57d91370768e3fc7de" id="r_a382ba05ac29dcc57d91370768e3fc7de"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a382ba05ac29dcc57d91370768e3fc7de">sGreaterOrEqual</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  341. <tr class="memdesc:a382ba05ac29dcc57d91370768e3fc7de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Greater than or equal (component wise) <br /></td></tr>
  342. <tr class="separator:a382ba05ac29dcc57d91370768e3fc7de"><td class="memSeparator" colspan="2">&#160;</td></tr>
  343. <tr class="memitem:a204c205724d5eda5fcbdd9b28d4180c1" id="r_a204c205724d5eda5fcbdd9b28d4180c1"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a204c205724d5eda5fcbdd9b28d4180c1">sFusedMultiplyAdd</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inMul1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inMul2, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inAdd)</td></tr>
  344. <tr class="memdesc:a204c205724d5eda5fcbdd9b28d4180c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates inMul1 * inMul2 + inAdd. <br /></td></tr>
  345. <tr class="separator:a204c205724d5eda5fcbdd9b28d4180c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  346. <tr class="memitem:a5254009509d3ae00ad218d2c19253a99" id="r_a5254009509d3ae00ad218d2c19253a99"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5254009509d3ae00ad218d2c19253a99">sSelect</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inNotSet, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inSet, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inControl)</td></tr>
  347. <tr class="memdesc:a5254009509d3ae00ad218d2c19253a99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Component wise select, returns inNotSet when highest bit of inControl = 0 and inSet when highest bit of inControl = 1. <br /></td></tr>
  348. <tr class="separator:a5254009509d3ae00ad218d2c19253a99"><td class="memSeparator" colspan="2">&#160;</td></tr>
  349. <tr class="memitem:a7355bb9b4f08f3b419a9ff1d82356992" id="r_a7355bb9b4f08f3b419a9ff1d82356992"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7355bb9b4f08f3b419a9ff1d82356992">sOr</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  350. <tr class="memdesc:a7355bb9b4f08f3b419a9ff1d82356992"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logical or (component wise) <br /></td></tr>
  351. <tr class="separator:a7355bb9b4f08f3b419a9ff1d82356992"><td class="memSeparator" colspan="2">&#160;</td></tr>
  352. <tr class="memitem:a2f3ad4f64ebffb752360f19225186886" id="r_a2f3ad4f64ebffb752360f19225186886"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2f3ad4f64ebffb752360f19225186886">sXor</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  353. <tr class="memdesc:a2f3ad4f64ebffb752360f19225186886"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logical xor (component wise) <br /></td></tr>
  354. <tr class="separator:a2f3ad4f64ebffb752360f19225186886"><td class="memSeparator" colspan="2">&#160;</td></tr>
  355. <tr class="memitem:a1cc30fe9dbcd37737dab80818f790ae8" id="r_a1cc30fe9dbcd37737dab80818f790ae8"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1cc30fe9dbcd37737dab80818f790ae8">sAnd</a> (<a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  356. <tr class="memdesc:a1cc30fe9dbcd37737dab80818f790ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logical and (component wise) <br /></td></tr>
  357. <tr class="separator:a1cc30fe9dbcd37737dab80818f790ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  358. <tr class="memitem:a2266a780190160ac4e0dd1747c496fa7" id="r_a2266a780190160ac4e0dd1747c496fa7"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">Type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2266a780190160ac4e0dd1747c496fa7">sFixW</a> (<a class="el" href="#a534f0bd3a829454ca3f6c00d60068b27">TypeArg</a> inValue)</td></tr>
  359. <tr class="memdesc:a2266a780190160ac4e0dd1747c496fa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal helper function that ensures that the Z component is replicated to the W component to prevent divisions by zero. <br /></td></tr>
  360. <tr class="separator:a2266a780190160ac4e0dd1747c496fa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  361. </table><table class="memberdecls">
  362. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
  363. Public Attributes</h2></td></tr>
  364. <tr class="memitem:a13dd55795146d5fc464d23139a067c96" id="r_a13dd55795146d5fc464d23139a067c96"><td class="memItemLeft" >union {&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  365. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  366. <tr class="memitem:ad8928950de87ae57b65a3f9506c5c81d" id="r_ad8928950de87ae57b65a3f9506c5c81d"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">Type</a>&#160;&#160;&#160;<a class="el" href="#a2b0ef89bdfb754e256a43a9505075060">mValue</a>&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  367. <tr class="separator:ad8928950de87ae57b65a3f9506c5c81d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  368. <tr class="memitem:aaaaeddff899e0e783bbc377b6a45c37c" id="r_aaaaeddff899e0e783bbc377b6a45c37c"><td class="memItemLeft" >&#160;&#160;&#160;double&#160;&#160;&#160;<a class="el" href="#a02eda6f310f59ac7faf07b6b21de4fd5">mF64</a> [4]&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  369. <tr class="separator:aaaaeddff899e0e783bbc377b6a45c37c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  370. <tr class="memitem:a13dd55795146d5fc464d23139a067c96" id="r_a13dd55795146d5fc464d23139a067c96"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom">&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  371. <tr class="separator:a13dd55795146d5fc464d23139a067c96"><td class="memSeparator" colspan="2">&#160;</td></tr>
  372. </table><table class="memberdecls">
  373. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-attribs" name="pub-static-attribs"></a>
  374. Static Public Attributes</h2></td></tr>
  375. <tr class="memitem:a85ae33d3486f8af0b5b95d79f99acc00" id="r_a85ae33d3486f8af0b5b95d79f99acc00"><td class="memItemLeft" align="right" valign="top">static const double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a85ae33d3486f8af0b5b95d79f99acc00">cTrue</a> = <a class="el" href="_math_8h.html#ab2cbe30946edbf23887cfc1291025866">BitCast</a>&lt;double&gt;(~<a class="el" href="_core_8h.html#a60e8696a4678cd348e991a1f172e53f7">uint64</a>(0))</td></tr>
  376. <tr class="memdesc:a85ae33d3486f8af0b5b95d79f99acc00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Representations of true and false for boolean operations. <br /></td></tr>
  377. <tr class="separator:a85ae33d3486f8af0b5b95d79f99acc00"><td class="memSeparator" colspan="2">&#160;</td></tr>
  378. <tr class="memitem:afbee9e9a9f30370826e55f6c81ed9951" id="r_afbee9e9a9f30370826e55f6c81ed9951"><td class="memItemLeft" align="right" valign="top">static const double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afbee9e9a9f30370826e55f6c81ed9951">cFalse</a> = 0.0</td></tr>
  379. <tr class="separator:afbee9e9a9f30370826e55f6c81ed9951"><td class="memSeparator" colspan="2">&#160;</td></tr>
  380. </table><table class="memberdecls">
  381. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
  382. Friends</h2></td></tr>
  383. <tr class="memitem:a5eb373a1eec5f1e81d8523e6efeedcb3" id="r_a5eb373a1eec5f1e81d8523e6efeedcb3"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5eb373a1eec5f1e81d8523e6efeedcb3">operator*</a> (double inV1, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV2)</td></tr>
  384. <tr class="memdesc:a5eb373a1eec5f1e81d8523e6efeedcb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector with double. <br /></td></tr>
  385. <tr class="separator:a5eb373a1eec5f1e81d8523e6efeedcb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  386. <tr class="memitem:a68288c7a72386e912ef1372110da2b27" id="r_a68288c7a72386e912ef1372110da2b27"><td class="memItemLeft" align="right" valign="top">ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a68288c7a72386e912ef1372110da2b27">operator&lt;&lt;</a> (ostream &amp;inStream, <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a> inV)</td></tr>
  387. <tr class="memdesc:a68288c7a72386e912ef1372110da2b27"><td class="mdescLeft">&#160;</td><td class="mdescRight">To String. <br /></td></tr>
  388. <tr class="separator:a68288c7a72386e912ef1372110da2b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
  389. </table>
  390. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  391. <div class="textblock"><p>3 component vector of doubles (stored as 4 vectors). Note that we keep the 4th component the same as the 3rd component to avoid divisions by zero when JPH_FLOATING_POINT_EXCEPTIONS_ENABLED defined </p>
  392. </div><h2 class="groupheader">Member Typedef Documentation</h2>
  393. <a id="adb8357872b8bcac73ffb3c85bffa9f13" name="adb8357872b8bcac73ffb3c85bffa9f13"></a>
  394. <h2 class="memtitle"><span class="permalink"><a href="#adb8357872b8bcac73ffb3c85bffa9f13">&#9670;&#160;</a></span>ArgType</h2>
  395. <div class="memitem">
  396. <div class="memproto">
  397. <table class="memname">
  398. <tr>
  399. <td class="memname">using <a class="el" href="#adb8357872b8bcac73ffb3c85bffa9f13">DVec3::ArgType</a> = <a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td>
  400. </tr>
  401. </table>
  402. </div><div class="memdoc">
  403. </div>
  404. </div>
  405. <a id="ae955a8b286e5daaa80ca018afc4a2f92" name="ae955a8b286e5daaa80ca018afc4a2f92"></a>
  406. <h2 class="memtitle"><span class="permalink"><a href="#ae955a8b286e5daaa80ca018afc4a2f92">&#9670;&#160;</a></span>Type</h2>
  407. <div class="memitem">
  408. <div class="memproto">
  409. <table class="memname">
  410. <tr>
  411. <td class="memname">using <a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">DVec3::Type</a> = struct { double mData[4]; }</td>
  412. </tr>
  413. </table>
  414. </div><div class="memdoc">
  415. </div>
  416. </div>
  417. <a id="a534f0bd3a829454ca3f6c00d60068b27" name="a534f0bd3a829454ca3f6c00d60068b27"></a>
  418. <h2 class="memtitle"><span class="permalink"><a href="#a534f0bd3a829454ca3f6c00d60068b27">&#9670;&#160;</a></span>TypeArg</h2>
  419. <div class="memitem">
  420. <div class="memproto">
  421. <table class="memname">
  422. <tr>
  423. <td class="memname">using <a class="el" href="#a534f0bd3a829454ca3f6c00d60068b27">DVec3::TypeArg</a> = const <a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">Type</a> &amp;</td>
  424. </tr>
  425. </table>
  426. </div><div class="memdoc">
  427. </div>
  428. </div>
  429. <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  430. <a id="a8dee0ba62485a3b2fe924f1fa582c269" name="a8dee0ba62485a3b2fe924f1fa582c269"></a>
  431. <h2 class="memtitle"><span class="permalink"><a href="#a8dee0ba62485a3b2fe924f1fa582c269">&#9670;&#160;</a></span>DVec3() <span class="overload">[1/7]</span></h2>
  432. <div class="memitem">
  433. <div class="memproto">
  434. <table class="mlabels">
  435. <tr>
  436. <td class="mlabels-left">
  437. <table class="memname">
  438. <tr>
  439. <td class="memname">DVec3::DVec3 </td>
  440. <td>(</td>
  441. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  442. <td></td>
  443. </tr>
  444. </table>
  445. </td>
  446. <td class="mlabels-right">
  447. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  448. </tr>
  449. </table>
  450. </div><div class="memdoc">
  451. <p>Constructor. </p>
  452. <p>Intentionally not initialized for performance reasons </p>
  453. </div>
  454. </div>
  455. <a id="ae4beefad0c345ffc3516f9f2dcb7abba" name="ae4beefad0c345ffc3516f9f2dcb7abba"></a>
  456. <h2 class="memtitle"><span class="permalink"><a href="#ae4beefad0c345ffc3516f9f2dcb7abba">&#9670;&#160;</a></span>DVec3() <span class="overload">[2/7]</span></h2>
  457. <div class="memitem">
  458. <div class="memproto">
  459. <table class="mlabels">
  460. <tr>
  461. <td class="mlabels-left">
  462. <table class="memname">
  463. <tr>
  464. <td class="memname">DVec3::DVec3 </td>
  465. <td>(</td>
  466. <td class="paramtype">const <a class="el" href="class_d_vec3.html">DVec3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inRHS</em></span></td><td>)</td>
  467. <td></td>
  468. </tr>
  469. </table>
  470. </td>
  471. <td class="mlabels-right">
  472. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  473. </tr>
  474. </table>
  475. </div><div class="memdoc">
  476. </div>
  477. </div>
  478. <a id="aae9ec5d5349d1d8139cc4eb4943187f9" name="aae9ec5d5349d1d8139cc4eb4943187f9"></a>
  479. <h2 class="memtitle"><span class="permalink"><a href="#aae9ec5d5349d1d8139cc4eb4943187f9">&#9670;&#160;</a></span>DVec3() <span class="overload">[3/7]</span></h2>
  480. <div class="memitem">
  481. <div class="memproto">
  482. <table class="mlabels">
  483. <tr>
  484. <td class="mlabels-left">
  485. <table class="memname">
  486. <tr>
  487. <td class="memname">JPH_INLINE DVec3::DVec3 </td>
  488. <td>(</td>
  489. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inRHS</em></span></td><td>)</td>
  490. <td></td>
  491. </tr>
  492. </table>
  493. </td>
  494. <td class="mlabels-right">
  495. <span class="mlabels"><span class="mlabel">explicit</span></span> </td>
  496. </tr>
  497. </table>
  498. </div><div class="memdoc">
  499. </div>
  500. </div>
  501. <a id="aab5b5eca15f3f129ff6781cb0e2c27a7" name="aab5b5eca15f3f129ff6781cb0e2c27a7"></a>
  502. <h2 class="memtitle"><span class="permalink"><a href="#aab5b5eca15f3f129ff6781cb0e2c27a7">&#9670;&#160;</a></span>DVec3() <span class="overload">[4/7]</span></h2>
  503. <div class="memitem">
  504. <div class="memproto">
  505. <table class="mlabels">
  506. <tr>
  507. <td class="mlabels-left">
  508. <table class="memname">
  509. <tr>
  510. <td class="memname">DVec3::DVec3 </td>
  511. <td>(</td>
  512. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inRHS</em></span></td><td>)</td>
  513. <td></td>
  514. </tr>
  515. </table>
  516. </td>
  517. <td class="mlabels-right">
  518. <span class="mlabels"><span class="mlabel">explicit</span></span> </td>
  519. </tr>
  520. </table>
  521. </div><div class="memdoc">
  522. </div>
  523. </div>
  524. <a id="a286758dc45b39340db99639276d229a6" name="a286758dc45b39340db99639276d229a6"></a>
  525. <h2 class="memtitle"><span class="permalink"><a href="#a286758dc45b39340db99639276d229a6">&#9670;&#160;</a></span>DVec3() <span class="overload">[5/7]</span></h2>
  526. <div class="memitem">
  527. <div class="memproto">
  528. <table class="mlabels">
  529. <tr>
  530. <td class="mlabels-left">
  531. <table class="memname">
  532. <tr>
  533. <td class="memname">JPH_INLINE DVec3::DVec3 </td>
  534. <td>(</td>
  535. <td class="paramtype"><a class="el" href="#a534f0bd3a829454ca3f6c00d60068b27">TypeArg</a></td> <td class="paramname"><span class="paramname"><em>inRHS</em></span></td><td>)</td>
  536. <td></td>
  537. </tr>
  538. </table>
  539. </td>
  540. <td class="mlabels-right">
  541. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  542. </tr>
  543. </table>
  544. </div><div class="memdoc">
  545. </div>
  546. </div>
  547. <a id="ac908a3c045ea6d465602de318ccc2423" name="ac908a3c045ea6d465602de318ccc2423"></a>
  548. <h2 class="memtitle"><span class="permalink"><a href="#ac908a3c045ea6d465602de318ccc2423">&#9670;&#160;</a></span>DVec3() <span class="overload">[6/7]</span></h2>
  549. <div class="memitem">
  550. <div class="memproto">
  551. <table class="memname">
  552. <tr>
  553. <td class="memname">DVec3::DVec3 </td>
  554. <td>(</td>
  555. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inX</em></span>, </td>
  556. </tr>
  557. <tr>
  558. <td class="paramkey"></td>
  559. <td></td>
  560. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inY</em></span>, </td>
  561. </tr>
  562. <tr>
  563. <td class="paramkey"></td>
  564. <td></td>
  565. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inZ</em></span>&#160;)</td>
  566. </tr>
  567. </table>
  568. </div><div class="memdoc">
  569. <p>Create a vector from 3 components. </p>
  570. </div>
  571. </div>
  572. <a id="a14bb3fa7ea76c4c32d2ff6066a8e0732" name="a14bb3fa7ea76c4c32d2ff6066a8e0732"></a>
  573. <h2 class="memtitle"><span class="permalink"><a href="#a14bb3fa7ea76c4c32d2ff6066a8e0732">&#9670;&#160;</a></span>DVec3() <span class="overload">[7/7]</span></h2>
  574. <div class="memitem">
  575. <div class="memproto">
  576. <table class="mlabels">
  577. <tr>
  578. <td class="mlabels-left">
  579. <table class="memname">
  580. <tr>
  581. <td class="memname">DVec3::DVec3 </td>
  582. <td>(</td>
  583. <td class="paramtype">const <a class="el" href="class_double3.html">Double3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  584. <td></td>
  585. </tr>
  586. </table>
  587. </td>
  588. <td class="mlabels-right">
  589. <span class="mlabels"><span class="mlabel">explicit</span></span> </td>
  590. </tr>
  591. </table>
  592. </div><div class="memdoc">
  593. <p>Load 3 doubles from memory. </p>
  594. </div>
  595. </div>
  596. <h2 class="groupheader">Member Function Documentation</h2>
  597. <a id="a1df9be6cc25048acd0c184f60535189b" name="a1df9be6cc25048acd0c184f60535189b"></a>
  598. <h2 class="memtitle"><span class="permalink"><a href="#a1df9be6cc25048acd0c184f60535189b">&#9670;&#160;</a></span>Abs()</h2>
  599. <div class="memitem">
  600. <div class="memproto">
  601. <table class="memname">
  602. <tr>
  603. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::Abs </td>
  604. <td>(</td>
  605. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  606. <td> const</td>
  607. </tr>
  608. </table>
  609. </div><div class="memdoc">
  610. <p>Return the absolute value of each of the components. </p>
  611. </div>
  612. </div>
  613. <a id="a95c9295adcf9cea2990be8d4c6b71891" name="a95c9295adcf9cea2990be8d4c6b71891"></a>
  614. <h2 class="memtitle"><span class="permalink"><a href="#a95c9295adcf9cea2990be8d4c6b71891">&#9670;&#160;</a></span>CheckW()</h2>
  615. <div class="memitem">
  616. <div class="memproto">
  617. <table class="memname">
  618. <tr>
  619. <td class="memname">void DVec3::CheckW </td>
  620. <td>(</td>
  621. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  622. <td> const</td>
  623. </tr>
  624. </table>
  625. </div><div class="memdoc">
  626. <p>Internal helper function that checks that W is equal to Z, so e.g. dividing by it should not generate div by 0. </p>
  627. </div>
  628. </div>
  629. <a id="adcd2e18b680e40bbd4ac71c6b0463bd3" name="adcd2e18b680e40bbd4ac71c6b0463bd3"></a>
  630. <h2 class="memtitle"><span class="permalink"><a href="#adcd2e18b680e40bbd4ac71c6b0463bd3">&#9670;&#160;</a></span>Cross()</h2>
  631. <div class="memitem">
  632. <div class="memproto">
  633. <table class="memname">
  634. <tr>
  635. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::Cross </td>
  636. <td>(</td>
  637. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  638. <td> const</td>
  639. </tr>
  640. </table>
  641. </div><div class="memdoc">
  642. <p>Cross product. </p>
  643. </div>
  644. </div>
  645. <a id="aa0634b13605c6233650f7ccac571be75" name="aa0634b13605c6233650f7ccac571be75"></a>
  646. <h2 class="memtitle"><span class="permalink"><a href="#aa0634b13605c6233650f7ccac571be75">&#9670;&#160;</a></span>Dot()</h2>
  647. <div class="memitem">
  648. <div class="memproto">
  649. <table class="memname">
  650. <tr>
  651. <td class="memname">double DVec3::Dot </td>
  652. <td>(</td>
  653. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  654. <td> const</td>
  655. </tr>
  656. </table>
  657. </div><div class="memdoc">
  658. <p>Dot product. </p>
  659. </div>
  660. </div>
  661. <a id="a298f2bc29cc4d55a9f9d30a9512cada3" name="a298f2bc29cc4d55a9f9d30a9512cada3"></a>
  662. <h2 class="memtitle"><span class="permalink"><a href="#a298f2bc29cc4d55a9f9d30a9512cada3">&#9670;&#160;</a></span>GetSign()</h2>
  663. <div class="memitem">
  664. <div class="memproto">
  665. <table class="memname">
  666. <tr>
  667. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::GetSign </td>
  668. <td>(</td>
  669. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  670. <td> const</td>
  671. </tr>
  672. </table>
  673. </div><div class="memdoc">
  674. <p>Get vector that contains the sign of each element (returns 1 if positive, -1 if negative) </p>
  675. </div>
  676. </div>
  677. <a id="a11971a6122b035009707efe51f5a1169" name="a11971a6122b035009707efe51f5a1169"></a>
  678. <h2 class="memtitle"><span class="permalink"><a href="#a11971a6122b035009707efe51f5a1169">&#9670;&#160;</a></span>GetTrues()</h2>
  679. <div class="memitem">
  680. <div class="memproto">
  681. <table class="memname">
  682. <tr>
  683. <td class="memname">int DVec3::GetTrues </td>
  684. <td>(</td>
  685. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  686. <td> const</td>
  687. </tr>
  688. </table>
  689. </div><div class="memdoc">
  690. <p>Store if X is true in bit 0, Y in bit 1, Z in bit 2 and W in bit 3 (true is when highest bit of component is set) </p>
  691. </div>
  692. </div>
  693. <a id="afb533f92f55c1e9dc3e7eece73e87dda" name="afb533f92f55c1e9dc3e7eece73e87dda"></a>
  694. <h2 class="memtitle"><span class="permalink"><a href="#afb533f92f55c1e9dc3e7eece73e87dda">&#9670;&#160;</a></span>GetX()</h2>
  695. <div class="memitem">
  696. <div class="memproto">
  697. <table class="mlabels">
  698. <tr>
  699. <td class="mlabels-left">
  700. <table class="memname">
  701. <tr>
  702. <td class="memname">JPH_INLINE double DVec3::GetX </td>
  703. <td>(</td>
  704. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  705. <td> const</td>
  706. </tr>
  707. </table>
  708. </td>
  709. <td class="mlabels-right">
  710. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  711. </tr>
  712. </table>
  713. </div><div class="memdoc">
  714. <p>Get individual components. </p>
  715. </div>
  716. </div>
  717. <a id="ad5aa83813d9db92bd0f04610ff6da1d4" name="ad5aa83813d9db92bd0f04610ff6da1d4"></a>
  718. <h2 class="memtitle"><span class="permalink"><a href="#ad5aa83813d9db92bd0f04610ff6da1d4">&#9670;&#160;</a></span>GetY()</h2>
  719. <div class="memitem">
  720. <div class="memproto">
  721. <table class="mlabels">
  722. <tr>
  723. <td class="mlabels-left">
  724. <table class="memname">
  725. <tr>
  726. <td class="memname">JPH_INLINE double DVec3::GetY </td>
  727. <td>(</td>
  728. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  729. <td> const</td>
  730. </tr>
  731. </table>
  732. </td>
  733. <td class="mlabels-right">
  734. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  735. </tr>
  736. </table>
  737. </div><div class="memdoc">
  738. </div>
  739. </div>
  740. <a id="a829a6fd58f3d3bd2da8f4f56f09df728" name="a829a6fd58f3d3bd2da8f4f56f09df728"></a>
  741. <h2 class="memtitle"><span class="permalink"><a href="#a829a6fd58f3d3bd2da8f4f56f09df728">&#9670;&#160;</a></span>GetZ()</h2>
  742. <div class="memitem">
  743. <div class="memproto">
  744. <table class="mlabels">
  745. <tr>
  746. <td class="mlabels-left">
  747. <table class="memname">
  748. <tr>
  749. <td class="memname">JPH_INLINE double DVec3::GetZ </td>
  750. <td>(</td>
  751. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  752. <td> const</td>
  753. </tr>
  754. </table>
  755. </td>
  756. <td class="mlabels-right">
  757. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  758. </tr>
  759. </table>
  760. </div><div class="memdoc">
  761. </div>
  762. </div>
  763. <a id="a4841bd14fcbce5a9a03edde10d9c6b30" name="a4841bd14fcbce5a9a03edde10d9c6b30"></a>
  764. <h2 class="memtitle"><span class="permalink"><a href="#a4841bd14fcbce5a9a03edde10d9c6b30">&#9670;&#160;</a></span>IsClose()</h2>
  765. <div class="memitem">
  766. <div class="memproto">
  767. <table class="memname">
  768. <tr>
  769. <td class="memname">bool DVec3::IsClose </td>
  770. <td>(</td>
  771. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>, </td>
  772. </tr>
  773. <tr>
  774. <td class="paramkey"></td>
  775. <td></td>
  776. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inMaxDistSq</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1.0e-24</span>&#160;) const</td>
  777. </tr>
  778. </table>
  779. </div><div class="memdoc">
  780. <p>Test if two vectors are close. </p>
  781. </div>
  782. </div>
  783. <a id="a8215efb6695dc1ff3d1d3c6625bfb977" name="a8215efb6695dc1ff3d1d3c6625bfb977"></a>
  784. <h2 class="memtitle"><span class="permalink"><a href="#a8215efb6695dc1ff3d1d3c6625bfb977">&#9670;&#160;</a></span>IsNaN()</h2>
  785. <div class="memitem">
  786. <div class="memproto">
  787. <table class="memname">
  788. <tr>
  789. <td class="memname">bool DVec3::IsNaN </td>
  790. <td>(</td>
  791. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  792. <td> const</td>
  793. </tr>
  794. </table>
  795. </div><div class="memdoc">
  796. <p>Test if vector contains NaN elements. </p>
  797. </div>
  798. </div>
  799. <a id="aed8a5c005467d9089c5e2397529a1c53" name="aed8a5c005467d9089c5e2397529a1c53"></a>
  800. <h2 class="memtitle"><span class="permalink"><a href="#aed8a5c005467d9089c5e2397529a1c53">&#9670;&#160;</a></span>IsNearZero()</h2>
  801. <div class="memitem">
  802. <div class="memproto">
  803. <table class="memname">
  804. <tr>
  805. <td class="memname">bool DVec3::IsNearZero </td>
  806. <td>(</td>
  807. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inMaxDistSq</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1.0e-24</span></td><td>)</td>
  808. <td> const</td>
  809. </tr>
  810. </table>
  811. </div><div class="memdoc">
  812. <p>Test if vector is near zero. </p>
  813. </div>
  814. </div>
  815. <a id="a4f71719e4f963c925c4981ea049c3f15" name="a4f71719e4f963c925c4981ea049c3f15"></a>
  816. <h2 class="memtitle"><span class="permalink"><a href="#a4f71719e4f963c925c4981ea049c3f15">&#9670;&#160;</a></span>IsNormalized()</h2>
  817. <div class="memitem">
  818. <div class="memproto">
  819. <table class="memname">
  820. <tr>
  821. <td class="memname">bool DVec3::IsNormalized </td>
  822. <td>(</td>
  823. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inTolerance</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1.0e-12</span></td><td>)</td>
  824. <td> const</td>
  825. </tr>
  826. </table>
  827. </div><div class="memdoc">
  828. <p>Test if vector is normalized. </p>
  829. </div>
  830. </div>
  831. <a id="a7d1feb75db248b954ef774ee33e46014" name="a7d1feb75db248b954ef774ee33e46014"></a>
  832. <h2 class="memtitle"><span class="permalink"><a href="#a7d1feb75db248b954ef774ee33e46014">&#9670;&#160;</a></span>Length()</h2>
  833. <div class="memitem">
  834. <div class="memproto">
  835. <table class="memname">
  836. <tr>
  837. <td class="memname">double DVec3::Length </td>
  838. <td>(</td>
  839. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  840. <td> const</td>
  841. </tr>
  842. </table>
  843. </div><div class="memdoc">
  844. <p>Length of vector. </p>
  845. </div>
  846. </div>
  847. <a id="a95fe01b11cc216e8d718d1122392a018" name="a95fe01b11cc216e8d718d1122392a018"></a>
  848. <h2 class="memtitle"><span class="permalink"><a href="#a95fe01b11cc216e8d718d1122392a018">&#9670;&#160;</a></span>LengthSq()</h2>
  849. <div class="memitem">
  850. <div class="memproto">
  851. <table class="memname">
  852. <tr>
  853. <td class="memname">double DVec3::LengthSq </td>
  854. <td>(</td>
  855. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  856. <td> const</td>
  857. </tr>
  858. </table>
  859. </div><div class="memdoc">
  860. <p>Squared length of vector. </p>
  861. </div>
  862. </div>
  863. <a id="a98414033d7ebc2af3b1e950f378a77b7" name="a98414033d7ebc2af3b1e950f378a77b7"></a>
  864. <h2 class="memtitle"><span class="permalink"><a href="#a98414033d7ebc2af3b1e950f378a77b7">&#9670;&#160;</a></span>Normalized()</h2>
  865. <div class="memitem">
  866. <div class="memproto">
  867. <table class="memname">
  868. <tr>
  869. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::Normalized </td>
  870. <td>(</td>
  871. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  872. <td> const</td>
  873. </tr>
  874. </table>
  875. </div><div class="memdoc">
  876. <p>Normalize vector. </p>
  877. </div>
  878. </div>
  879. <a id="aea862e04fd4041a3d10035275fe995e0" name="aea862e04fd4041a3d10035275fe995e0"></a>
  880. <h2 class="memtitle"><span class="permalink"><a href="#aea862e04fd4041a3d10035275fe995e0">&#9670;&#160;</a></span>operator Vec3()</h2>
  881. <div class="memitem">
  882. <div class="memproto">
  883. <table class="mlabels">
  884. <tr>
  885. <td class="mlabels-left">
  886. <table class="memname">
  887. <tr>
  888. <td class="memname">DVec3::operator <a class="el" href="class_vec3.html">Vec3</a> </td>
  889. <td>(</td>
  890. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  891. <td> const</td>
  892. </tr>
  893. </table>
  894. </td>
  895. <td class="mlabels-right">
  896. <span class="mlabels"><span class="mlabel">explicit</span></span> </td>
  897. </tr>
  898. </table>
  899. </div><div class="memdoc">
  900. <p>Convert to float vector 3 rounding to nearest. </p>
  901. </div>
  902. </div>
  903. <a id="afcf4835749ee0cf9dffcb3d02822c198" name="afcf4835749ee0cf9dffcb3d02822c198"></a>
  904. <h2 class="memtitle"><span class="permalink"><a href="#afcf4835749ee0cf9dffcb3d02822c198">&#9670;&#160;</a></span>operator!=()</h2>
  905. <div class="memitem">
  906. <div class="memproto">
  907. <table class="mlabels">
  908. <tr>
  909. <td class="mlabels-left">
  910. <table class="memname">
  911. <tr>
  912. <td class="memname">JPH_INLINE bool DVec3::operator!= </td>
  913. <td>(</td>
  914. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  915. <td> const</td>
  916. </tr>
  917. </table>
  918. </td>
  919. <td class="mlabels-right">
  920. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  921. </tr>
  922. </table>
  923. </div><div class="memdoc">
  924. </div>
  925. </div>
  926. <a id="af4b10fe57b6cb3e07ebd55c59054d213" name="af4b10fe57b6cb3e07ebd55c59054d213"></a>
  927. <h2 class="memtitle"><span class="permalink"><a href="#af4b10fe57b6cb3e07ebd55c59054d213">&#9670;&#160;</a></span>operator*() <span class="overload">[1/2]</span></h2>
  928. <div class="memitem">
  929. <div class="memproto">
  930. <table class="memname">
  931. <tr>
  932. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator* </td>
  933. <td>(</td>
  934. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  935. <td> const</td>
  936. </tr>
  937. </table>
  938. </div><div class="memdoc">
  939. <p>Multiply vector with double. </p>
  940. </div>
  941. </div>
  942. <a id="a407ecd0e3be7e4f60cd02c4e47ef5adb" name="a407ecd0e3be7e4f60cd02c4e47ef5adb"></a>
  943. <h2 class="memtitle"><span class="permalink"><a href="#a407ecd0e3be7e4f60cd02c4e47ef5adb">&#9670;&#160;</a></span>operator*() <span class="overload">[2/2]</span></h2>
  944. <div class="memitem">
  945. <div class="memproto">
  946. <table class="memname">
  947. <tr>
  948. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator* </td>
  949. <td>(</td>
  950. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  951. <td> const</td>
  952. </tr>
  953. </table>
  954. </div><div class="memdoc">
  955. <p>Multiply two double vectors (component wise) </p>
  956. </div>
  957. </div>
  958. <a id="a1dc42bd495d9c8b63a856a1d516e4365" name="a1dc42bd495d9c8b63a856a1d516e4365"></a>
  959. <h2 class="memtitle"><span class="permalink"><a href="#a1dc42bd495d9c8b63a856a1d516e4365">&#9670;&#160;</a></span>operator*=() <span class="overload">[1/2]</span></h2>
  960. <div class="memitem">
  961. <div class="memproto">
  962. <table class="memname">
  963. <tr>
  964. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator*= </td>
  965. <td>(</td>
  966. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  967. <td></td>
  968. </tr>
  969. </table>
  970. </div><div class="memdoc">
  971. <p>Multiply vector with double. </p>
  972. </div>
  973. </div>
  974. <a id="a9e5a82ae492dbea121d220ed21fbd503" name="a9e5a82ae492dbea121d220ed21fbd503"></a>
  975. <h2 class="memtitle"><span class="permalink"><a href="#a9e5a82ae492dbea121d220ed21fbd503">&#9670;&#160;</a></span>operator*=() <span class="overload">[2/2]</span></h2>
  976. <div class="memitem">
  977. <div class="memproto">
  978. <table class="memname">
  979. <tr>
  980. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator*= </td>
  981. <td>(</td>
  982. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  983. <td></td>
  984. </tr>
  985. </table>
  986. </div><div class="memdoc">
  987. <p>Multiply vector with vector. </p>
  988. </div>
  989. </div>
  990. <a id="ae931145b41d6b5db001e40bd014bb183" name="ae931145b41d6b5db001e40bd014bb183"></a>
  991. <h2 class="memtitle"><span class="permalink"><a href="#ae931145b41d6b5db001e40bd014bb183">&#9670;&#160;</a></span>operator+() <span class="overload">[1/2]</span></h2>
  992. <div class="memitem">
  993. <div class="memproto">
  994. <table class="memname">
  995. <tr>
  996. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator+ </td>
  997. <td>(</td>
  998. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  999. <td> const</td>
  1000. </tr>
  1001. </table>
  1002. </div><div class="memdoc">
  1003. <p>Add two double vectors (component wise) </p>
  1004. </div>
  1005. </div>
  1006. <a id="a40e55c7777c00682e04610c67101d659" name="a40e55c7777c00682e04610c67101d659"></a>
  1007. <h2 class="memtitle"><span class="permalink"><a href="#a40e55c7777c00682e04610c67101d659">&#9670;&#160;</a></span>operator+() <span class="overload">[2/2]</span></h2>
  1008. <div class="memitem">
  1009. <div class="memproto">
  1010. <table class="memname">
  1011. <tr>
  1012. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator+ </td>
  1013. <td>(</td>
  1014. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1015. <td> const</td>
  1016. </tr>
  1017. </table>
  1018. </div><div class="memdoc">
  1019. <p>Add two vectors (component wise) </p>
  1020. </div>
  1021. </div>
  1022. <a id="aebfafc1078630f38852907c0be0e4a76" name="aebfafc1078630f38852907c0be0e4a76"></a>
  1023. <h2 class="memtitle"><span class="permalink"><a href="#aebfafc1078630f38852907c0be0e4a76">&#9670;&#160;</a></span>operator+=() <span class="overload">[1/2]</span></h2>
  1024. <div class="memitem">
  1025. <div class="memproto">
  1026. <table class="memname">
  1027. <tr>
  1028. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator+= </td>
  1029. <td>(</td>
  1030. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1031. <td></td>
  1032. </tr>
  1033. </table>
  1034. </div><div class="memdoc">
  1035. <p>Add two double vectors (component wise) </p>
  1036. </div>
  1037. </div>
  1038. <a id="ac071add2c7d9a00bd3f4342198e5aca2" name="ac071add2c7d9a00bd3f4342198e5aca2"></a>
  1039. <h2 class="memtitle"><span class="permalink"><a href="#ac071add2c7d9a00bd3f4342198e5aca2">&#9670;&#160;</a></span>operator+=() <span class="overload">[2/2]</span></h2>
  1040. <div class="memitem">
  1041. <div class="memproto">
  1042. <table class="memname">
  1043. <tr>
  1044. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator+= </td>
  1045. <td>(</td>
  1046. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1047. <td></td>
  1048. </tr>
  1049. </table>
  1050. </div><div class="memdoc">
  1051. <p>Add two vectors (component wise) </p>
  1052. </div>
  1053. </div>
  1054. <a id="a7e0f61fe354f1886485f0814a8881cd0" name="a7e0f61fe354f1886485f0814a8881cd0"></a>
  1055. <h2 class="memtitle"><span class="permalink"><a href="#a7e0f61fe354f1886485f0814a8881cd0">&#9670;&#160;</a></span>operator-() <span class="overload">[1/3]</span></h2>
  1056. <div class="memitem">
  1057. <div class="memproto">
  1058. <table class="memname">
  1059. <tr>
  1060. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator- </td>
  1061. <td>(</td>
  1062. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1063. <td> const</td>
  1064. </tr>
  1065. </table>
  1066. </div><div class="memdoc">
  1067. <p>Negate. </p>
  1068. </div>
  1069. </div>
  1070. <a id="a4a2fd5bf39a1cad1a63913ee8f54dc9c" name="a4a2fd5bf39a1cad1a63913ee8f54dc9c"></a>
  1071. <h2 class="memtitle"><span class="permalink"><a href="#a4a2fd5bf39a1cad1a63913ee8f54dc9c">&#9670;&#160;</a></span>operator-() <span class="overload">[2/3]</span></h2>
  1072. <div class="memitem">
  1073. <div class="memproto">
  1074. <table class="memname">
  1075. <tr>
  1076. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator- </td>
  1077. <td>(</td>
  1078. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1079. <td> const</td>
  1080. </tr>
  1081. </table>
  1082. </div><div class="memdoc">
  1083. <p>Subtract two double vectors (component wise) </p>
  1084. </div>
  1085. </div>
  1086. <a id="a89b578e95bc0e6a1f97d28afc66256fd" name="a89b578e95bc0e6a1f97d28afc66256fd"></a>
  1087. <h2 class="memtitle"><span class="permalink"><a href="#a89b578e95bc0e6a1f97d28afc66256fd">&#9670;&#160;</a></span>operator-() <span class="overload">[3/3]</span></h2>
  1088. <div class="memitem">
  1089. <div class="memproto">
  1090. <table class="memname">
  1091. <tr>
  1092. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator- </td>
  1093. <td>(</td>
  1094. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1095. <td> const</td>
  1096. </tr>
  1097. </table>
  1098. </div><div class="memdoc">
  1099. <p>Subtract two vectors (component wise) </p>
  1100. </div>
  1101. </div>
  1102. <a id="a9913eae45efd88f12df0d709d719e283" name="a9913eae45efd88f12df0d709d719e283"></a>
  1103. <h2 class="memtitle"><span class="permalink"><a href="#a9913eae45efd88f12df0d709d719e283">&#9670;&#160;</a></span>operator-=() <span class="overload">[1/2]</span></h2>
  1104. <div class="memitem">
  1105. <div class="memproto">
  1106. <table class="memname">
  1107. <tr>
  1108. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator-= </td>
  1109. <td>(</td>
  1110. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1111. <td></td>
  1112. </tr>
  1113. </table>
  1114. </div><div class="memdoc">
  1115. <p>Subtract two vectors (component wise) </p>
  1116. </div>
  1117. </div>
  1118. <a id="adefdf792db358b7bc0f9259c3b685574" name="adefdf792db358b7bc0f9259c3b685574"></a>
  1119. <h2 class="memtitle"><span class="permalink"><a href="#adefdf792db358b7bc0f9259c3b685574">&#9670;&#160;</a></span>operator-=() <span class="overload">[2/2]</span></h2>
  1120. <div class="memitem">
  1121. <div class="memproto">
  1122. <table class="memname">
  1123. <tr>
  1124. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator-= </td>
  1125. <td>(</td>
  1126. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1127. <td></td>
  1128. </tr>
  1129. </table>
  1130. </div><div class="memdoc">
  1131. <p>Subtract two vectors (component wise) </p>
  1132. </div>
  1133. </div>
  1134. <a id="a98c87bc69aa4aaf5efff2f7371026213" name="a98c87bc69aa4aaf5efff2f7371026213"></a>
  1135. <h2 class="memtitle"><span class="permalink"><a href="#a98c87bc69aa4aaf5efff2f7371026213">&#9670;&#160;</a></span>operator/() <span class="overload">[1/2]</span></h2>
  1136. <div class="memitem">
  1137. <div class="memproto">
  1138. <table class="memname">
  1139. <tr>
  1140. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator/ </td>
  1141. <td>(</td>
  1142. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1143. <td> const</td>
  1144. </tr>
  1145. </table>
  1146. </div><div class="memdoc">
  1147. <p>Divide vector by double. </p>
  1148. </div>
  1149. </div>
  1150. <a id="a80844acdcc20d872097060f18a49dfae" name="a80844acdcc20d872097060f18a49dfae"></a>
  1151. <h2 class="memtitle"><span class="permalink"><a href="#a80844acdcc20d872097060f18a49dfae">&#9670;&#160;</a></span>operator/() <span class="overload">[2/2]</span></h2>
  1152. <div class="memitem">
  1153. <div class="memproto">
  1154. <table class="memname">
  1155. <tr>
  1156. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::operator/ </td>
  1157. <td>(</td>
  1158. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1159. <td> const</td>
  1160. </tr>
  1161. </table>
  1162. </div><div class="memdoc">
  1163. <p>Divide (component wise) </p>
  1164. </div>
  1165. </div>
  1166. <a id="ac4311882ae51a22074b22caa012fb600" name="ac4311882ae51a22074b22caa012fb600"></a>
  1167. <h2 class="memtitle"><span class="permalink"><a href="#ac4311882ae51a22074b22caa012fb600">&#9670;&#160;</a></span>operator/=()</h2>
  1168. <div class="memitem">
  1169. <div class="memproto">
  1170. <table class="memname">
  1171. <tr>
  1172. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator/= </td>
  1173. <td>(</td>
  1174. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1175. <td></td>
  1176. </tr>
  1177. </table>
  1178. </div><div class="memdoc">
  1179. <p>Divide vector by double. </p>
  1180. </div>
  1181. </div>
  1182. <a id="a90e7c899c1d5f2dddc3f332ba62c8de1" name="a90e7c899c1d5f2dddc3f332ba62c8de1"></a>
  1183. <h2 class="memtitle"><span class="permalink"><a href="#a90e7c899c1d5f2dddc3f332ba62c8de1">&#9670;&#160;</a></span>operator=()</h2>
  1184. <div class="memitem">
  1185. <div class="memproto">
  1186. <table class="mlabels">
  1187. <tr>
  1188. <td class="mlabels-left">
  1189. <table class="memname">
  1190. <tr>
  1191. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> &amp; DVec3::operator= </td>
  1192. <td>(</td>
  1193. <td class="paramtype">const <a class="el" href="class_d_vec3.html">DVec3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inRHS</em></span></td><td>)</td>
  1194. <td></td>
  1195. </tr>
  1196. </table>
  1197. </td>
  1198. <td class="mlabels-right">
  1199. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  1200. </tr>
  1201. </table>
  1202. </div><div class="memdoc">
  1203. </div>
  1204. </div>
  1205. <a id="af9f3df26312b07df5e6ea770e250e5bf" name="af9f3df26312b07df5e6ea770e250e5bf"></a>
  1206. <h2 class="memtitle"><span class="permalink"><a href="#af9f3df26312b07df5e6ea770e250e5bf">&#9670;&#160;</a></span>operator==()</h2>
  1207. <div class="memitem">
  1208. <div class="memproto">
  1209. <table class="memname">
  1210. <tr>
  1211. <td class="memname">bool DVec3::operator== </td>
  1212. <td>(</td>
  1213. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span></td><td>)</td>
  1214. <td> const</td>
  1215. </tr>
  1216. </table>
  1217. </div><div class="memdoc">
  1218. <p>Comparison. </p>
  1219. </div>
  1220. </div>
  1221. <a id="a6cdaec58545b032bd9c73e5da12cc50a" name="a6cdaec58545b032bd9c73e5da12cc50a"></a>
  1222. <h2 class="memtitle"><span class="permalink"><a href="#a6cdaec58545b032bd9c73e5da12cc50a">&#9670;&#160;</a></span>operator[]()</h2>
  1223. <div class="memitem">
  1224. <div class="memproto">
  1225. <table class="mlabels">
  1226. <tr>
  1227. <td class="mlabels-left">
  1228. <table class="memname">
  1229. <tr>
  1230. <td class="memname">JPH_INLINE double DVec3::operator[] </td>
  1231. <td>(</td>
  1232. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inCoordinate</em></span></td><td>)</td>
  1233. <td> const</td>
  1234. </tr>
  1235. </table>
  1236. </td>
  1237. <td class="mlabels-right">
  1238. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1239. </tr>
  1240. </table>
  1241. </div><div class="memdoc">
  1242. <p>Get double component by index. </p>
  1243. </div>
  1244. </div>
  1245. <a id="ab9a393f086d70f1a5a42e20a28f6278b" name="ab9a393f086d70f1a5a42e20a28f6278b"></a>
  1246. <h2 class="memtitle"><span class="permalink"><a href="#ab9a393f086d70f1a5a42e20a28f6278b">&#9670;&#160;</a></span>PrepareRoundToInf()</h2>
  1247. <div class="memitem">
  1248. <div class="memproto">
  1249. <table class="memname">
  1250. <tr>
  1251. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::PrepareRoundToInf </td>
  1252. <td>(</td>
  1253. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1254. <td> const</td>
  1255. </tr>
  1256. </table>
  1257. </div><div class="memdoc">
  1258. <p>Prepare to convert to float vector 3 rounding towards positive/negative inf (returns <a class="el" href="class_d_vec3.html">DVec3</a> that can be converted to a <a class="el" href="class_vec3.html">Vec3</a> to get the rounding) </p>
  1259. </div>
  1260. </div>
  1261. <a id="ae4f056668680a0741aeda962d0dc794c" name="ae4f056668680a0741aeda962d0dc794c"></a>
  1262. <h2 class="memtitle"><span class="permalink"><a href="#ae4f056668680a0741aeda962d0dc794c">&#9670;&#160;</a></span>PrepareRoundToZero()</h2>
  1263. <div class="memitem">
  1264. <div class="memproto">
  1265. <table class="memname">
  1266. <tr>
  1267. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::PrepareRoundToZero </td>
  1268. <td>(</td>
  1269. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1270. <td> const</td>
  1271. </tr>
  1272. </table>
  1273. </div><div class="memdoc">
  1274. <p>Prepare to convert to float vector 3 rounding towards zero (returns <a class="el" href="class_d_vec3.html">DVec3</a> that can be converted to a <a class="el" href="class_vec3.html">Vec3</a> to get the rounding) </p>
  1275. </div>
  1276. </div>
  1277. <a id="ae4f3e3231039ea4fb254150a32a2b679" name="ae4f3e3231039ea4fb254150a32a2b679"></a>
  1278. <h2 class="memtitle"><span class="permalink"><a href="#ae4f3e3231039ea4fb254150a32a2b679">&#9670;&#160;</a></span>Reciprocal()</h2>
  1279. <div class="memitem">
  1280. <div class="memproto">
  1281. <table class="memname">
  1282. <tr>
  1283. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::Reciprocal </td>
  1284. <td>(</td>
  1285. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1286. <td> const</td>
  1287. </tr>
  1288. </table>
  1289. </div><div class="memdoc">
  1290. <p>Reciprocal vector (1 / value) for each of the components. </p>
  1291. </div>
  1292. </div>
  1293. <a id="a1cc30fe9dbcd37737dab80818f790ae8" name="a1cc30fe9dbcd37737dab80818f790ae8"></a>
  1294. <h2 class="memtitle"><span class="permalink"><a href="#a1cc30fe9dbcd37737dab80818f790ae8">&#9670;&#160;</a></span>sAnd()</h2>
  1295. <div class="memitem">
  1296. <div class="memproto">
  1297. <table class="mlabels">
  1298. <tr>
  1299. <td class="mlabels-left">
  1300. <table class="memname">
  1301. <tr>
  1302. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sAnd </td>
  1303. <td>(</td>
  1304. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1305. </tr>
  1306. <tr>
  1307. <td class="paramkey"></td>
  1308. <td></td>
  1309. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1310. </tr>
  1311. </table>
  1312. </td>
  1313. <td class="mlabels-right">
  1314. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1315. </tr>
  1316. </table>
  1317. </div><div class="memdoc">
  1318. <p>Logical and (component wise) </p>
  1319. </div>
  1320. </div>
  1321. <a id="a6c8bccdc7a9dfb0897f00b73284db110" name="a6c8bccdc7a9dfb0897f00b73284db110"></a>
  1322. <h2 class="memtitle"><span class="permalink"><a href="#a6c8bccdc7a9dfb0897f00b73284db110">&#9670;&#160;</a></span>sAxisX()</h2>
  1323. <div class="memitem">
  1324. <div class="memproto">
  1325. <table class="mlabels">
  1326. <tr>
  1327. <td class="mlabels-left">
  1328. <table class="memname">
  1329. <tr>
  1330. <td class="memname">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sAxisX </td>
  1331. <td>(</td>
  1332. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1333. <td></td>
  1334. </tr>
  1335. </table>
  1336. </td>
  1337. <td class="mlabels-right">
  1338. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1339. </tr>
  1340. </table>
  1341. </div><div class="memdoc">
  1342. <p>Vectors with the principal axis. </p>
  1343. </div>
  1344. </div>
  1345. <a id="a1af180166bc463c9b4c4aa2997399f17" name="a1af180166bc463c9b4c4aa2997399f17"></a>
  1346. <h2 class="memtitle"><span class="permalink"><a href="#a1af180166bc463c9b4c4aa2997399f17">&#9670;&#160;</a></span>sAxisY()</h2>
  1347. <div class="memitem">
  1348. <div class="memproto">
  1349. <table class="mlabels">
  1350. <tr>
  1351. <td class="mlabels-left">
  1352. <table class="memname">
  1353. <tr>
  1354. <td class="memname">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sAxisY </td>
  1355. <td>(</td>
  1356. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1357. <td></td>
  1358. </tr>
  1359. </table>
  1360. </td>
  1361. <td class="mlabels-right">
  1362. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1363. </tr>
  1364. </table>
  1365. </div><div class="memdoc">
  1366. </div>
  1367. </div>
  1368. <a id="aa3bc7e15bfe4452110934ef29c984626" name="aa3bc7e15bfe4452110934ef29c984626"></a>
  1369. <h2 class="memtitle"><span class="permalink"><a href="#aa3bc7e15bfe4452110934ef29c984626">&#9670;&#160;</a></span>sAxisZ()</h2>
  1370. <div class="memitem">
  1371. <div class="memproto">
  1372. <table class="mlabels">
  1373. <tr>
  1374. <td class="mlabels-left">
  1375. <table class="memname">
  1376. <tr>
  1377. <td class="memname">static JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sAxisZ </td>
  1378. <td>(</td>
  1379. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1380. <td></td>
  1381. </tr>
  1382. </table>
  1383. </td>
  1384. <td class="mlabels-right">
  1385. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  1386. </tr>
  1387. </table>
  1388. </div><div class="memdoc">
  1389. </div>
  1390. </div>
  1391. <a id="a10e8bf45f37556208decfad2ff76de67" name="a10e8bf45f37556208decfad2ff76de67"></a>
  1392. <h2 class="memtitle"><span class="permalink"><a href="#a10e8bf45f37556208decfad2ff76de67">&#9670;&#160;</a></span>sClamp()</h2>
  1393. <div class="memitem">
  1394. <div class="memproto">
  1395. <table class="mlabels">
  1396. <tr>
  1397. <td class="mlabels-left">
  1398. <table class="memname">
  1399. <tr>
  1400. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sClamp </td>
  1401. <td>(</td>
  1402. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span>, </td>
  1403. </tr>
  1404. <tr>
  1405. <td class="paramkey"></td>
  1406. <td></td>
  1407. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inMin</em></span>, </td>
  1408. </tr>
  1409. <tr>
  1410. <td class="paramkey"></td>
  1411. <td></td>
  1412. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inMax</em></span>&#160;)</td>
  1413. </tr>
  1414. </table>
  1415. </td>
  1416. <td class="mlabels-right">
  1417. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1418. </tr>
  1419. </table>
  1420. </div><div class="memdoc">
  1421. <p>Clamp a vector between min and max (component wise) </p>
  1422. </div>
  1423. </div>
  1424. <a id="ae56eb5609346a7b025d1c6261baf54b7" name="ae56eb5609346a7b025d1c6261baf54b7"></a>
  1425. <h2 class="memtitle"><span class="permalink"><a href="#ae56eb5609346a7b025d1c6261baf54b7">&#9670;&#160;</a></span>sEquals()</h2>
  1426. <div class="memitem">
  1427. <div class="memproto">
  1428. <table class="mlabels">
  1429. <tr>
  1430. <td class="mlabels-left">
  1431. <table class="memname">
  1432. <tr>
  1433. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sEquals </td>
  1434. <td>(</td>
  1435. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1436. </tr>
  1437. <tr>
  1438. <td class="paramkey"></td>
  1439. <td></td>
  1440. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1441. </tr>
  1442. </table>
  1443. </td>
  1444. <td class="mlabels-right">
  1445. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1446. </tr>
  1447. </table>
  1448. </div><div class="memdoc">
  1449. <p>Equals (component wise) </p>
  1450. </div>
  1451. </div>
  1452. <a id="a6673601fc4d03869820519fa95cb5ed1" name="a6673601fc4d03869820519fa95cb5ed1"></a>
  1453. <h2 class="memtitle"><span class="permalink"><a href="#a6673601fc4d03869820519fa95cb5ed1">&#9670;&#160;</a></span>Set()</h2>
  1454. <div class="memitem">
  1455. <div class="memproto">
  1456. <table class="mlabels">
  1457. <tr>
  1458. <td class="mlabels-left">
  1459. <table class="memname">
  1460. <tr>
  1461. <td class="memname">JPH_INLINE void DVec3::Set </td>
  1462. <td>(</td>
  1463. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inX</em></span>, </td>
  1464. </tr>
  1465. <tr>
  1466. <td class="paramkey"></td>
  1467. <td></td>
  1468. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inY</em></span>, </td>
  1469. </tr>
  1470. <tr>
  1471. <td class="paramkey"></td>
  1472. <td></td>
  1473. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inZ</em></span>&#160;)</td>
  1474. </tr>
  1475. </table>
  1476. </td>
  1477. <td class="mlabels-right">
  1478. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1479. </tr>
  1480. </table>
  1481. </div><div class="memdoc">
  1482. <p>Set all components. </p>
  1483. </div>
  1484. </div>
  1485. <a id="a5563e51b263bc4c08fcfbc2babd3a7a5" name="a5563e51b263bc4c08fcfbc2babd3a7a5"></a>
  1486. <h2 class="memtitle"><span class="permalink"><a href="#a5563e51b263bc4c08fcfbc2babd3a7a5">&#9670;&#160;</a></span>SetComponent()</h2>
  1487. <div class="memitem">
  1488. <div class="memproto">
  1489. <table class="mlabels">
  1490. <tr>
  1491. <td class="mlabels-left">
  1492. <table class="memname">
  1493. <tr>
  1494. <td class="memname">JPH_INLINE void DVec3::SetComponent </td>
  1495. <td>(</td>
  1496. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inCoordinate</em></span>, </td>
  1497. </tr>
  1498. <tr>
  1499. <td class="paramkey"></td>
  1500. <td></td>
  1501. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inValue</em></span>&#160;)</td>
  1502. </tr>
  1503. </table>
  1504. </td>
  1505. <td class="mlabels-right">
  1506. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1507. </tr>
  1508. </table>
  1509. </div><div class="memdoc">
  1510. <p>Set double component by index. </p>
  1511. </div>
  1512. </div>
  1513. <a id="af2ffc0234f93a9ba535204d9b35ecb8f" name="af2ffc0234f93a9ba535204d9b35ecb8f"></a>
  1514. <h2 class="memtitle"><span class="permalink"><a href="#af2ffc0234f93a9ba535204d9b35ecb8f">&#9670;&#160;</a></span>SetX()</h2>
  1515. <div class="memitem">
  1516. <div class="memproto">
  1517. <table class="mlabels">
  1518. <tr>
  1519. <td class="mlabels-left">
  1520. <table class="memname">
  1521. <tr>
  1522. <td class="memname">JPH_INLINE void DVec3::SetX </td>
  1523. <td>(</td>
  1524. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inX</em></span></td><td>)</td>
  1525. <td></td>
  1526. </tr>
  1527. </table>
  1528. </td>
  1529. <td class="mlabels-right">
  1530. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1531. </tr>
  1532. </table>
  1533. </div><div class="memdoc">
  1534. <p>Set individual components. </p>
  1535. </div>
  1536. </div>
  1537. <a id="a7a23eb2bdff0ab56356796bd6335d1a4" name="a7a23eb2bdff0ab56356796bd6335d1a4"></a>
  1538. <h2 class="memtitle"><span class="permalink"><a href="#a7a23eb2bdff0ab56356796bd6335d1a4">&#9670;&#160;</a></span>SetY()</h2>
  1539. <div class="memitem">
  1540. <div class="memproto">
  1541. <table class="mlabels">
  1542. <tr>
  1543. <td class="mlabels-left">
  1544. <table class="memname">
  1545. <tr>
  1546. <td class="memname">JPH_INLINE void DVec3::SetY </td>
  1547. <td>(</td>
  1548. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inY</em></span></td><td>)</td>
  1549. <td></td>
  1550. </tr>
  1551. </table>
  1552. </td>
  1553. <td class="mlabels-right">
  1554. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1555. </tr>
  1556. </table>
  1557. </div><div class="memdoc">
  1558. </div>
  1559. </div>
  1560. <a id="ac180ba3a4c610e3ae77f3acfdff4139b" name="ac180ba3a4c610e3ae77f3acfdff4139b"></a>
  1561. <h2 class="memtitle"><span class="permalink"><a href="#ac180ba3a4c610e3ae77f3acfdff4139b">&#9670;&#160;</a></span>SetZ()</h2>
  1562. <div class="memitem">
  1563. <div class="memproto">
  1564. <table class="mlabels">
  1565. <tr>
  1566. <td class="mlabels-left">
  1567. <table class="memname">
  1568. <tr>
  1569. <td class="memname">JPH_INLINE void DVec3::SetZ </td>
  1570. <td>(</td>
  1571. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inZ</em></span></td><td>)</td>
  1572. <td></td>
  1573. </tr>
  1574. </table>
  1575. </td>
  1576. <td class="mlabels-right">
  1577. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1578. </tr>
  1579. </table>
  1580. </div><div class="memdoc">
  1581. </div>
  1582. </div>
  1583. <a id="a2266a780190160ac4e0dd1747c496fa7" name="a2266a780190160ac4e0dd1747c496fa7"></a>
  1584. <h2 class="memtitle"><span class="permalink"><a href="#a2266a780190160ac4e0dd1747c496fa7">&#9670;&#160;</a></span>sFixW()</h2>
  1585. <div class="memitem">
  1586. <div class="memproto">
  1587. <table class="mlabels">
  1588. <tr>
  1589. <td class="mlabels-left">
  1590. <table class="memname">
  1591. <tr>
  1592. <td class="memname"><a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">DVec3::Type</a> DVec3::sFixW </td>
  1593. <td>(</td>
  1594. <td class="paramtype"><a class="el" href="#a534f0bd3a829454ca3f6c00d60068b27">TypeArg</a></td> <td class="paramname"><span class="paramname"><em>inValue</em></span></td><td>)</td>
  1595. <td></td>
  1596. </tr>
  1597. </table>
  1598. </td>
  1599. <td class="mlabels-right">
  1600. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1601. </tr>
  1602. </table>
  1603. </div><div class="memdoc">
  1604. <p>Internal helper function that ensures that the Z component is replicated to the W component to prevent divisions by zero. </p>
  1605. </div>
  1606. </div>
  1607. <a id="a204c205724d5eda5fcbdd9b28d4180c1" name="a204c205724d5eda5fcbdd9b28d4180c1"></a>
  1608. <h2 class="memtitle"><span class="permalink"><a href="#a204c205724d5eda5fcbdd9b28d4180c1">&#9670;&#160;</a></span>sFusedMultiplyAdd()</h2>
  1609. <div class="memitem">
  1610. <div class="memproto">
  1611. <table class="mlabels">
  1612. <tr>
  1613. <td class="mlabels-left">
  1614. <table class="memname">
  1615. <tr>
  1616. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sFusedMultiplyAdd </td>
  1617. <td>(</td>
  1618. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inMul1</em></span>, </td>
  1619. </tr>
  1620. <tr>
  1621. <td class="paramkey"></td>
  1622. <td></td>
  1623. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inMul2</em></span>, </td>
  1624. </tr>
  1625. <tr>
  1626. <td class="paramkey"></td>
  1627. <td></td>
  1628. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inAdd</em></span>&#160;)</td>
  1629. </tr>
  1630. </table>
  1631. </td>
  1632. <td class="mlabels-right">
  1633. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1634. </tr>
  1635. </table>
  1636. </div><div class="memdoc">
  1637. <p>Calculates inMul1 * inMul2 + inAdd. </p>
  1638. </div>
  1639. </div>
  1640. <a id="a60c87539167a77817e6298bd8cdb1386" name="a60c87539167a77817e6298bd8cdb1386"></a>
  1641. <h2 class="memtitle"><span class="permalink"><a href="#a60c87539167a77817e6298bd8cdb1386">&#9670;&#160;</a></span>sGreater()</h2>
  1642. <div class="memitem">
  1643. <div class="memproto">
  1644. <table class="mlabels">
  1645. <tr>
  1646. <td class="mlabels-left">
  1647. <table class="memname">
  1648. <tr>
  1649. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sGreater </td>
  1650. <td>(</td>
  1651. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1652. </tr>
  1653. <tr>
  1654. <td class="paramkey"></td>
  1655. <td></td>
  1656. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1657. </tr>
  1658. </table>
  1659. </td>
  1660. <td class="mlabels-right">
  1661. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1662. </tr>
  1663. </table>
  1664. </div><div class="memdoc">
  1665. <p>Greater than (component wise) </p>
  1666. </div>
  1667. </div>
  1668. <a id="a382ba05ac29dcc57d91370768e3fc7de" name="a382ba05ac29dcc57d91370768e3fc7de"></a>
  1669. <h2 class="memtitle"><span class="permalink"><a href="#a382ba05ac29dcc57d91370768e3fc7de">&#9670;&#160;</a></span>sGreaterOrEqual()</h2>
  1670. <div class="memitem">
  1671. <div class="memproto">
  1672. <table class="mlabels">
  1673. <tr>
  1674. <td class="mlabels-left">
  1675. <table class="memname">
  1676. <tr>
  1677. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sGreaterOrEqual </td>
  1678. <td>(</td>
  1679. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1680. </tr>
  1681. <tr>
  1682. <td class="paramkey"></td>
  1683. <td></td>
  1684. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1685. </tr>
  1686. </table>
  1687. </td>
  1688. <td class="mlabels-right">
  1689. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1690. </tr>
  1691. </table>
  1692. </div><div class="memdoc">
  1693. <p>Greater than or equal (component wise) </p>
  1694. </div>
  1695. </div>
  1696. <a id="a0055c9056c703cfb53e306a702843edb" name="a0055c9056c703cfb53e306a702843edb"></a>
  1697. <h2 class="memtitle"><span class="permalink"><a href="#a0055c9056c703cfb53e306a702843edb">&#9670;&#160;</a></span>sLess()</h2>
  1698. <div class="memitem">
  1699. <div class="memproto">
  1700. <table class="mlabels">
  1701. <tr>
  1702. <td class="mlabels-left">
  1703. <table class="memname">
  1704. <tr>
  1705. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sLess </td>
  1706. <td>(</td>
  1707. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1708. </tr>
  1709. <tr>
  1710. <td class="paramkey"></td>
  1711. <td></td>
  1712. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1713. </tr>
  1714. </table>
  1715. </td>
  1716. <td class="mlabels-right">
  1717. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1718. </tr>
  1719. </table>
  1720. </div><div class="memdoc">
  1721. <p>Less than (component wise) </p>
  1722. </div>
  1723. </div>
  1724. <a id="aaf7417eac9dc51d1786a791ca94f4556" name="aaf7417eac9dc51d1786a791ca94f4556"></a>
  1725. <h2 class="memtitle"><span class="permalink"><a href="#aaf7417eac9dc51d1786a791ca94f4556">&#9670;&#160;</a></span>sLessOrEqual()</h2>
  1726. <div class="memitem">
  1727. <div class="memproto">
  1728. <table class="mlabels">
  1729. <tr>
  1730. <td class="mlabels-left">
  1731. <table class="memname">
  1732. <tr>
  1733. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sLessOrEqual </td>
  1734. <td>(</td>
  1735. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1736. </tr>
  1737. <tr>
  1738. <td class="paramkey"></td>
  1739. <td></td>
  1740. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1741. </tr>
  1742. </table>
  1743. </td>
  1744. <td class="mlabels-right">
  1745. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1746. </tr>
  1747. </table>
  1748. </div><div class="memdoc">
  1749. <p>Less than or equal (component wise) </p>
  1750. </div>
  1751. </div>
  1752. <a id="ac19d415377cf91a317d29cc99d319134" name="ac19d415377cf91a317d29cc99d319134"></a>
  1753. <h2 class="memtitle"><span class="permalink"><a href="#ac19d415377cf91a317d29cc99d319134">&#9670;&#160;</a></span>sLoadDouble3Unsafe()</h2>
  1754. <div class="memitem">
  1755. <div class="memproto">
  1756. <table class="mlabels">
  1757. <tr>
  1758. <td class="mlabels-left">
  1759. <table class="memname">
  1760. <tr>
  1761. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sLoadDouble3Unsafe </td>
  1762. <td>(</td>
  1763. <td class="paramtype">const <a class="el" href="class_double3.html">Double3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1764. <td></td>
  1765. </tr>
  1766. </table>
  1767. </td>
  1768. <td class="mlabels-right">
  1769. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1770. </tr>
  1771. </table>
  1772. </div><div class="memdoc">
  1773. <p>Load 3 doubles from memory (reads 64 bits extra which it doesn't use) </p>
  1774. </div>
  1775. </div>
  1776. <a id="a034bd1560d516612ff248c5b6eb5f245" name="a034bd1560d516612ff248c5b6eb5f245"></a>
  1777. <h2 class="memtitle"><span class="permalink"><a href="#a034bd1560d516612ff248c5b6eb5f245">&#9670;&#160;</a></span>sMax()</h2>
  1778. <div class="memitem">
  1779. <div class="memproto">
  1780. <table class="mlabels">
  1781. <tr>
  1782. <td class="mlabels-left">
  1783. <table class="memname">
  1784. <tr>
  1785. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sMax </td>
  1786. <td>(</td>
  1787. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1788. </tr>
  1789. <tr>
  1790. <td class="paramkey"></td>
  1791. <td></td>
  1792. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1793. </tr>
  1794. </table>
  1795. </td>
  1796. <td class="mlabels-right">
  1797. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1798. </tr>
  1799. </table>
  1800. </div><div class="memdoc">
  1801. <p>Return the maximum of each of the components. </p>
  1802. </div>
  1803. </div>
  1804. <a id="a110aacf67e0556aaf2fdad2e86578715" name="a110aacf67e0556aaf2fdad2e86578715"></a>
  1805. <h2 class="memtitle"><span class="permalink"><a href="#a110aacf67e0556aaf2fdad2e86578715">&#9670;&#160;</a></span>sMin()</h2>
  1806. <div class="memitem">
  1807. <div class="memproto">
  1808. <table class="mlabels">
  1809. <tr>
  1810. <td class="mlabels-left">
  1811. <table class="memname">
  1812. <tr>
  1813. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sMin </td>
  1814. <td>(</td>
  1815. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1816. </tr>
  1817. <tr>
  1818. <td class="paramkey"></td>
  1819. <td></td>
  1820. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1821. </tr>
  1822. </table>
  1823. </td>
  1824. <td class="mlabels-right">
  1825. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1826. </tr>
  1827. </table>
  1828. </div><div class="memdoc">
  1829. <p>Return the minimum value of each of the components. </p>
  1830. </div>
  1831. </div>
  1832. <a id="a597fd4ed4cbf7af0c17bbd374afb4727" name="a597fd4ed4cbf7af0c17bbd374afb4727"></a>
  1833. <h2 class="memtitle"><span class="permalink"><a href="#a597fd4ed4cbf7af0c17bbd374afb4727">&#9670;&#160;</a></span>sNaN()</h2>
  1834. <div class="memitem">
  1835. <div class="memproto">
  1836. <table class="mlabels">
  1837. <tr>
  1838. <td class="mlabels-left">
  1839. <table class="memname">
  1840. <tr>
  1841. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sNaN </td>
  1842. <td>(</td>
  1843. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1844. <td></td>
  1845. </tr>
  1846. </table>
  1847. </td>
  1848. <td class="mlabels-right">
  1849. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1850. </tr>
  1851. </table>
  1852. </div><div class="memdoc">
  1853. <p><a class="el" href="class_vector.html" title="Templatized vector class.">Vector</a> with all NaN's. </p>
  1854. </div>
  1855. </div>
  1856. <a id="a35ef19e9f75acca4eae99f2849f347f9" name="a35ef19e9f75acca4eae99f2849f347f9"></a>
  1857. <h2 class="memtitle"><span class="permalink"><a href="#a35ef19e9f75acca4eae99f2849f347f9">&#9670;&#160;</a></span>sOne()</h2>
  1858. <div class="memitem">
  1859. <div class="memproto">
  1860. <table class="mlabels">
  1861. <tr>
  1862. <td class="mlabels-left">
  1863. <table class="memname">
  1864. <tr>
  1865. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sOne </td>
  1866. <td>(</td>
  1867. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1868. <td></td>
  1869. </tr>
  1870. </table>
  1871. </td>
  1872. <td class="mlabels-right">
  1873. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1874. </tr>
  1875. </table>
  1876. </div><div class="memdoc">
  1877. <p><a class="el" href="class_vector.html" title="Templatized vector class.">Vector</a> with all ones. </p>
  1878. </div>
  1879. </div>
  1880. <a id="a7355bb9b4f08f3b419a9ff1d82356992" name="a7355bb9b4f08f3b419a9ff1d82356992"></a>
  1881. <h2 class="memtitle"><span class="permalink"><a href="#a7355bb9b4f08f3b419a9ff1d82356992">&#9670;&#160;</a></span>sOr()</h2>
  1882. <div class="memitem">
  1883. <div class="memproto">
  1884. <table class="mlabels">
  1885. <tr>
  1886. <td class="mlabels-left">
  1887. <table class="memname">
  1888. <tr>
  1889. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sOr </td>
  1890. <td>(</td>
  1891. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1892. </tr>
  1893. <tr>
  1894. <td class="paramkey"></td>
  1895. <td></td>
  1896. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  1897. </tr>
  1898. </table>
  1899. </td>
  1900. <td class="mlabels-right">
  1901. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1902. </tr>
  1903. </table>
  1904. </div><div class="memdoc">
  1905. <p>Logical or (component wise) </p>
  1906. </div>
  1907. </div>
  1908. <a id="a286f436889f911c0fcf7f58692bb039d" name="a286f436889f911c0fcf7f58692bb039d"></a>
  1909. <h2 class="memtitle"><span class="permalink"><a href="#a286f436889f911c0fcf7f58692bb039d">&#9670;&#160;</a></span>Sqrt()</h2>
  1910. <div class="memitem">
  1911. <div class="memproto">
  1912. <table class="memname">
  1913. <tr>
  1914. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::Sqrt </td>
  1915. <td>(</td>
  1916. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1917. <td> const</td>
  1918. </tr>
  1919. </table>
  1920. </div><div class="memdoc">
  1921. <p>Component wise square root. </p>
  1922. </div>
  1923. </div>
  1924. <a id="aacd317439be46d73edb9c0272b9445d6" name="aacd317439be46d73edb9c0272b9445d6"></a>
  1925. <h2 class="memtitle"><span class="permalink"><a href="#aacd317439be46d73edb9c0272b9445d6">&#9670;&#160;</a></span>sReplicate()</h2>
  1926. <div class="memitem">
  1927. <div class="memproto">
  1928. <table class="mlabels">
  1929. <tr>
  1930. <td class="mlabels-left">
  1931. <table class="memname">
  1932. <tr>
  1933. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sReplicate </td>
  1934. <td>(</td>
  1935. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1936. <td></td>
  1937. </tr>
  1938. </table>
  1939. </td>
  1940. <td class="mlabels-right">
  1941. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1942. </tr>
  1943. </table>
  1944. </div><div class="memdoc">
  1945. <p>Replicate inV across all components. </p>
  1946. </div>
  1947. </div>
  1948. <a id="a5254009509d3ae00ad218d2c19253a99" name="a5254009509d3ae00ad218d2c19253a99"></a>
  1949. <h2 class="memtitle"><span class="permalink"><a href="#a5254009509d3ae00ad218d2c19253a99">&#9670;&#160;</a></span>sSelect()</h2>
  1950. <div class="memitem">
  1951. <div class="memproto">
  1952. <table class="mlabels">
  1953. <tr>
  1954. <td class="mlabels-left">
  1955. <table class="memname">
  1956. <tr>
  1957. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sSelect </td>
  1958. <td>(</td>
  1959. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inNotSet</em></span>, </td>
  1960. </tr>
  1961. <tr>
  1962. <td class="paramkey"></td>
  1963. <td></td>
  1964. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inSet</em></span>, </td>
  1965. </tr>
  1966. <tr>
  1967. <td class="paramkey"></td>
  1968. <td></td>
  1969. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inControl</em></span>&#160;)</td>
  1970. </tr>
  1971. </table>
  1972. </td>
  1973. <td class="mlabels-right">
  1974. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1975. </tr>
  1976. </table>
  1977. </div><div class="memdoc">
  1978. <p>Component wise select, returns inNotSet when highest bit of inControl = 0 and inSet when highest bit of inControl = 1. </p>
  1979. </div>
  1980. </div>
  1981. <a id="a660cd286454202510b44fa18c2283d4d" name="a660cd286454202510b44fa18c2283d4d"></a>
  1982. <h2 class="memtitle"><span class="permalink"><a href="#a660cd286454202510b44fa18c2283d4d">&#9670;&#160;</a></span>StoreDouble3()</h2>
  1983. <div class="memitem">
  1984. <div class="memproto">
  1985. <table class="memname">
  1986. <tr>
  1987. <td class="memname">void DVec3::StoreDouble3 </td>
  1988. <td>(</td>
  1989. <td class="paramtype"><a class="el" href="class_double3.html">Double3</a> *</td> <td class="paramname"><span class="paramname"><em>outV</em></span></td><td>)</td>
  1990. <td> const</td>
  1991. </tr>
  1992. </table>
  1993. </div><div class="memdoc">
  1994. <p>Store 3 doubles to memory. </p>
  1995. </div>
  1996. </div>
  1997. <a id="a2f3ad4f64ebffb752360f19225186886" name="a2f3ad4f64ebffb752360f19225186886"></a>
  1998. <h2 class="memtitle"><span class="permalink"><a href="#a2f3ad4f64ebffb752360f19225186886">&#9670;&#160;</a></span>sXor()</h2>
  1999. <div class="memitem">
  2000. <div class="memproto">
  2001. <table class="mlabels">
  2002. <tr>
  2003. <td class="mlabels-left">
  2004. <table class="memname">
  2005. <tr>
  2006. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sXor </td>
  2007. <td>(</td>
  2008. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  2009. </tr>
  2010. <tr>
  2011. <td class="paramkey"></td>
  2012. <td></td>
  2013. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  2014. </tr>
  2015. </table>
  2016. </td>
  2017. <td class="mlabels-right">
  2018. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  2019. </tr>
  2020. </table>
  2021. </div><div class="memdoc">
  2022. <p>Logical xor (component wise) </p>
  2023. </div>
  2024. </div>
  2025. <a id="a7b43808613023c4439455b887c566246" name="a7b43808613023c4439455b887c566246"></a>
  2026. <h2 class="memtitle"><span class="permalink"><a href="#a7b43808613023c4439455b887c566246">&#9670;&#160;</a></span>sZero()</h2>
  2027. <div class="memitem">
  2028. <div class="memproto">
  2029. <table class="mlabels">
  2030. <tr>
  2031. <td class="mlabels-left">
  2032. <table class="memname">
  2033. <tr>
  2034. <td class="memname"><a class="el" href="class_d_vec3.html">DVec3</a> DVec3::sZero </td>
  2035. <td>(</td>
  2036. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2037. <td></td>
  2038. </tr>
  2039. </table>
  2040. </td>
  2041. <td class="mlabels-right">
  2042. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  2043. </tr>
  2044. </table>
  2045. </div><div class="memdoc">
  2046. <p><a class="el" href="class_vector.html" title="Templatized vector class.">Vector</a> with all zeros. </p>
  2047. </div>
  2048. </div>
  2049. <a id="a7c7ae9dc9ebecde0e653c872fd6aad58" name="a7c7ae9dc9ebecde0e653c872fd6aad58"></a>
  2050. <h2 class="memtitle"><span class="permalink"><a href="#a7c7ae9dc9ebecde0e653c872fd6aad58">&#9670;&#160;</a></span>TestAllTrue()</h2>
  2051. <div class="memitem">
  2052. <div class="memproto">
  2053. <table class="memname">
  2054. <tr>
  2055. <td class="memname">bool DVec3::TestAllTrue </td>
  2056. <td>(</td>
  2057. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2058. <td> const</td>
  2059. </tr>
  2060. </table>
  2061. </div><div class="memdoc">
  2062. <p>Test if all components are true (true is when highest bit of component is set) </p>
  2063. </div>
  2064. </div>
  2065. <a id="a0f06147fe78e9b54a1865579401fe97f" name="a0f06147fe78e9b54a1865579401fe97f"></a>
  2066. <h2 class="memtitle"><span class="permalink"><a href="#a0f06147fe78e9b54a1865579401fe97f">&#9670;&#160;</a></span>TestAnyTrue()</h2>
  2067. <div class="memitem">
  2068. <div class="memproto">
  2069. <table class="memname">
  2070. <tr>
  2071. <td class="memname">bool DVec3::TestAnyTrue </td>
  2072. <td>(</td>
  2073. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2074. <td> const</td>
  2075. </tr>
  2076. </table>
  2077. </div><div class="memdoc">
  2078. <p>Test if any of the components are true (true is when highest bit of component is set) </p>
  2079. </div>
  2080. </div>
  2081. <a id="a10a315fe487a61ec9fd93810a18477f5" name="a10a315fe487a61ec9fd93810a18477f5"></a>
  2082. <h2 class="memtitle"><span class="permalink"><a href="#a10a315fe487a61ec9fd93810a18477f5">&#9670;&#160;</a></span>ToVec3RoundDown()</h2>
  2083. <div class="memitem">
  2084. <div class="memproto">
  2085. <table class="memname">
  2086. <tr>
  2087. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> DVec3::ToVec3RoundDown </td>
  2088. <td>(</td>
  2089. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2090. <td> const</td>
  2091. </tr>
  2092. </table>
  2093. </div><div class="memdoc">
  2094. <p>Convert to float vector 3 rounding down. </p>
  2095. </div>
  2096. </div>
  2097. <a id="a825111b9afec36c79cfc63fa855f5cb1" name="a825111b9afec36c79cfc63fa855f5cb1"></a>
  2098. <h2 class="memtitle"><span class="permalink"><a href="#a825111b9afec36c79cfc63fa855f5cb1">&#9670;&#160;</a></span>ToVec3RoundUp()</h2>
  2099. <div class="memitem">
  2100. <div class="memproto">
  2101. <table class="memname">
  2102. <tr>
  2103. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> DVec3::ToVec3RoundUp </td>
  2104. <td>(</td>
  2105. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2106. <td> const</td>
  2107. </tr>
  2108. </table>
  2109. </div><div class="memdoc">
  2110. <p>Convert to float vector 3 rounding up. </p>
  2111. </div>
  2112. </div>
  2113. <h2 class="groupheader">Friends And Related Symbol Documentation</h2>
  2114. <a id="a5eb373a1eec5f1e81d8523e6efeedcb3" name="a5eb373a1eec5f1e81d8523e6efeedcb3"></a>
  2115. <h2 class="memtitle"><span class="permalink"><a href="#a5eb373a1eec5f1e81d8523e6efeedcb3">&#9670;&#160;</a></span>operator*</h2>
  2116. <div class="memitem">
  2117. <div class="memproto">
  2118. <table class="mlabels">
  2119. <tr>
  2120. <td class="mlabels-left">
  2121. <table class="memname">
  2122. <tr>
  2123. <td class="memname">JPH_INLINE <a class="el" href="class_d_vec3.html">DVec3</a> operator* </td>
  2124. <td>(</td>
  2125. <td class="paramtype">double</td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  2126. </tr>
  2127. <tr>
  2128. <td class="paramkey"></td>
  2129. <td></td>
  2130. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV2</em></span>&#160;)</td>
  2131. </tr>
  2132. </table>
  2133. </td>
  2134. <td class="mlabels-right">
  2135. <span class="mlabels"><span class="mlabel">friend</span></span> </td>
  2136. </tr>
  2137. </table>
  2138. </div><div class="memdoc">
  2139. <p>Multiply vector with double. </p>
  2140. </div>
  2141. </div>
  2142. <a id="a68288c7a72386e912ef1372110da2b27" name="a68288c7a72386e912ef1372110da2b27"></a>
  2143. <h2 class="memtitle"><span class="permalink"><a href="#a68288c7a72386e912ef1372110da2b27">&#9670;&#160;</a></span>operator&lt;&lt;</h2>
  2144. <div class="memitem">
  2145. <div class="memproto">
  2146. <table class="mlabels">
  2147. <tr>
  2148. <td class="mlabels-left">
  2149. <table class="memname">
  2150. <tr>
  2151. <td class="memname">ostream &amp; operator&lt;&lt; </td>
  2152. <td>(</td>
  2153. <td class="paramtype">ostream &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span>, </td>
  2154. </tr>
  2155. <tr>
  2156. <td class="paramkey"></td>
  2157. <td></td>
  2158. <td class="paramtype"><a class="el" href="_math_types_8h.html#a943465464cdfbc4fedad29af409c31ff">DVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span>&#160;)</td>
  2159. </tr>
  2160. </table>
  2161. </td>
  2162. <td class="mlabels-right">
  2163. <span class="mlabels"><span class="mlabel">friend</span></span> </td>
  2164. </tr>
  2165. </table>
  2166. </div><div class="memdoc">
  2167. <p>To String. </p>
  2168. </div>
  2169. </div>
  2170. <h2 class="groupheader">Member Data Documentation</h2>
  2171. <a id="a13dd55795146d5fc464d23139a067c96" name="a13dd55795146d5fc464d23139a067c96"></a>
  2172. <h2 class="memtitle"><span class="permalink"><a href="#a13dd55795146d5fc464d23139a067c96">&#9670;&#160;</a></span>[union]</h2>
  2173. <div class="memitem">
  2174. <div class="memproto">
  2175. <table class="memname">
  2176. <tr>
  2177. <td class="memname">union { ... } <a class="el" href="class_d_vec3.html">DVec3</a></td>
  2178. </tr>
  2179. </table>
  2180. </div><div class="memdoc">
  2181. </div>
  2182. </div>
  2183. <a id="afbee9e9a9f30370826e55f6c81ed9951" name="afbee9e9a9f30370826e55f6c81ed9951"></a>
  2184. <h2 class="memtitle"><span class="permalink"><a href="#afbee9e9a9f30370826e55f6c81ed9951">&#9670;&#160;</a></span>cFalse</h2>
  2185. <div class="memitem">
  2186. <div class="memproto">
  2187. <table class="mlabels">
  2188. <tr>
  2189. <td class="mlabels-left">
  2190. <table class="memname">
  2191. <tr>
  2192. <td class="memname">const double DVec3::cFalse = 0.0</td>
  2193. </tr>
  2194. </table>
  2195. </td>
  2196. <td class="mlabels-right">
  2197. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  2198. </tr>
  2199. </table>
  2200. </div><div class="memdoc">
  2201. </div>
  2202. </div>
  2203. <a id="a85ae33d3486f8af0b5b95d79f99acc00" name="a85ae33d3486f8af0b5b95d79f99acc00"></a>
  2204. <h2 class="memtitle"><span class="permalink"><a href="#a85ae33d3486f8af0b5b95d79f99acc00">&#9670;&#160;</a></span>cTrue</h2>
  2205. <div class="memitem">
  2206. <div class="memproto">
  2207. <table class="mlabels">
  2208. <tr>
  2209. <td class="mlabels-left">
  2210. <table class="memname">
  2211. <tr>
  2212. <td class="memname">const double DVec3::cTrue = <a class="el" href="_math_8h.html#ab2cbe30946edbf23887cfc1291025866">BitCast</a>&lt;double&gt;(~<a class="el" href="_core_8h.html#a60e8696a4678cd348e991a1f172e53f7">uint64</a>(0))</td>
  2213. </tr>
  2214. </table>
  2215. </td>
  2216. <td class="mlabels-right">
  2217. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
  2218. </tr>
  2219. </table>
  2220. </div><div class="memdoc">
  2221. <p>Representations of true and false for boolean operations. </p>
  2222. </div>
  2223. </div>
  2224. <a id="a02eda6f310f59ac7faf07b6b21de4fd5" name="a02eda6f310f59ac7faf07b6b21de4fd5"></a>
  2225. <h2 class="memtitle"><span class="permalink"><a href="#a02eda6f310f59ac7faf07b6b21de4fd5">&#9670;&#160;</a></span>mF64</h2>
  2226. <div class="memitem">
  2227. <div class="memproto">
  2228. <table class="memname">
  2229. <tr>
  2230. <td class="memname">double DVec3::mF64[4]</td>
  2231. </tr>
  2232. </table>
  2233. </div><div class="memdoc">
  2234. </div>
  2235. </div>
  2236. <a id="a2b0ef89bdfb754e256a43a9505075060" name="a2b0ef89bdfb754e256a43a9505075060"></a>
  2237. <h2 class="memtitle"><span class="permalink"><a href="#a2b0ef89bdfb754e256a43a9505075060">&#9670;&#160;</a></span>mValue</h2>
  2238. <div class="memitem">
  2239. <div class="memproto">
  2240. <table class="memname">
  2241. <tr>
  2242. <td class="memname"><a class="el" href="#ae955a8b286e5daaa80ca018afc4a2f92">Type</a> DVec3::mValue</td>
  2243. </tr>
  2244. </table>
  2245. </div><div class="memdoc">
  2246. </div>
  2247. </div>
  2248. <hr/>The documentation for this class was generated from the following files:<ul>
  2249. <li>Jolt/Math/<a class="el" href="_d_vec3_8h_source.html">DVec3.h</a></li>
  2250. <li>Jolt/Math/<a class="el" href="_d_vec3_8inl_source.html">DVec3.inl</a></li>
  2251. </ul>
  2252. </div><!-- contents -->
  2253. </div><!-- doc-content -->
  2254. <!-- start footer part -->
  2255. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  2256. <ul>
  2257. <li class="navelem"><a class="el" href="class_d_vec3.html">DVec3</a></li>
  2258. <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
  2259. </ul>
  2260. </div>
  2261. </body>
  2262. </html>