class_mat44.html 137 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446
  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: Mat44 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_mat44.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="#friends">Friends</a> &#124;
  111. <a href="class_mat44-members.html">List of all members</a> </div>
  112. <div class="headertitle"><div class="title">Mat44 Class Reference</div></div>
  113. </div><!--header-->
  114. <div class="contents">
  115. <p>Holds a 4x4 matrix of floats, but supports also operations on the 3x3 upper left part of the matrix.
  116. <a href="#details">More...</a></p>
  117. <p><code>#include &lt;<a class="el" href="_mat44_8h_source.html">Mat44.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:a3aa8910fb3ed0cba6463518fe7d52328" id="r_a3aa8910fb3ed0cba6463518fe7d52328"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a> = <a class="el" href="class_vec4.html#abf8c2cd052f001035442fc47f9b240d7">Vec4::Type</a></td></tr>
  122. <tr class="separator:a3aa8910fb3ed0cba6463518fe7d52328"><td class="memSeparator" colspan="2">&#160;</td></tr>
  123. <tr class="memitem:af683e408c0736cfaeabba6c87f6308ea" id="r_af683e408c0736cfaeabba6c87f6308ea"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af683e408c0736cfaeabba6c87f6308ea">ArgType</a> = <a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td></tr>
  124. <tr class="separator:af683e408c0736cfaeabba6c87f6308ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. </table><table class="memberdecls">
  126. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
  127. Public Member Functions</h2></td></tr>
  128. <tr class="memitem:ad95a3b3f36bf3216574383e3dfb927ed" id="r_ad95a3b3f36bf3216574383e3dfb927ed"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad95a3b3f36bf3216574383e3dfb927ed">Mat44</a> ()=default</td></tr>
  129. <tr class="memdesc:ad95a3b3f36bf3216574383e3dfb927ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
  130. <tr class="separator:ad95a3b3f36bf3216574383e3dfb927ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
  131. <tr class="memitem:a9e544288786bacea509de796f7a2a224" id="r_a9e544288786bacea509de796f7a2a224"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9e544288786bacea509de796f7a2a224">Mat44</a> (<a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC1, <a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC2, <a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC3, <a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC4)</td></tr>
  132. <tr class="separator:a9e544288786bacea509de796f7a2a224"><td class="memSeparator" colspan="2">&#160;</td></tr>
  133. <tr class="memitem:a5448dda46fe8a36d0ae9b6168607e3cb" id="r_a5448dda46fe8a36d0ae9b6168607e3cb"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5448dda46fe8a36d0ae9b6168607e3cb">Mat44</a> (<a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC1, <a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC2, <a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inC3, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inC4)</td></tr>
  134. <tr class="separator:a5448dda46fe8a36d0ae9b6168607e3cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
  135. <tr class="memitem:ab804bcb6a2583f7bf966d3d5a3a24161" id="r_ab804bcb6a2583f7bf966d3d5a3a24161"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab804bcb6a2583f7bf966d3d5a3a24161">Mat44</a> (const <a class="el" href="class_mat44.html">Mat44</a> &amp;inM2)=default</td></tr>
  136. <tr class="separator:ab804bcb6a2583f7bf966d3d5a3a24161"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. <tr class="memitem:a84bfaec450f946db0a29c1a6036f4043" id="r_a84bfaec450f946db0a29c1a6036f4043"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_mat44.html">Mat44</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a84bfaec450f946db0a29c1a6036f4043">operator=</a> (const <a class="el" href="class_mat44.html">Mat44</a> &amp;inM2)=default</td></tr>
  138. <tr class="separator:a84bfaec450f946db0a29c1a6036f4043"><td class="memSeparator" colspan="2">&#160;</td></tr>
  139. <tr class="memitem:af8719f405d2de3e6310ba091f79aa518" id="r_af8719f405d2de3e6310ba091f79aa518"><td class="memItemLeft" align="right" valign="top">JPH_INLINE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af8719f405d2de3e6310ba091f79aa518">Mat44</a> (<a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a> inC1, <a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a> inC2, <a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a> inC3, <a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a> inC4)</td></tr>
  140. <tr class="separator:af8719f405d2de3e6310ba091f79aa518"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:a7a74f3bb8a8ee63470c5b73e9fbfd5e9" id="r_a7a74f3bb8a8ee63470c5b73e9fbfd5e9"><td class="memItemLeft" align="right" valign="top">JPH_INLINE float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7a74f3bb8a8ee63470c5b73e9fbfd5e9">operator()</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inRow, <a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inColumn) const</td></tr>
  142. <tr class="memdesc:a7a74f3bb8a8ee63470c5b73e9fbfd5e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get float component by element index. <br /></td></tr>
  143. <tr class="separator:a7a74f3bb8a8ee63470c5b73e9fbfd5e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  144. <tr class="memitem:a608a5ec6255c02bfdfa11f4b9d66d438" id="r_a608a5ec6255c02bfdfa11f4b9d66d438"><td class="memItemLeft" align="right" valign="top">JPH_INLINE float &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a608a5ec6255c02bfdfa11f4b9d66d438">operator()</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inRow, <a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inColumn)</td></tr>
  145. <tr class="separator:a608a5ec6255c02bfdfa11f4b9d66d438"><td class="memSeparator" colspan="2">&#160;</td></tr>
  146. <tr class="memitem:a3be30e0ae2ded68ebb5ceea9afbfe5c1" id="r_a3be30e0ae2ded68ebb5ceea9afbfe5c1"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3be30e0ae2ded68ebb5ceea9afbfe5c1">operator==</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM2) const</td></tr>
  147. <tr class="memdesc:a3be30e0ae2ded68ebb5ceea9afbfe5c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Comparison. <br /></td></tr>
  148. <tr class="separator:a3be30e0ae2ded68ebb5ceea9afbfe5c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:a13b1fe0d8085ba8cf9845394c1433d89" id="r_a13b1fe0d8085ba8cf9845394c1433d89"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a13b1fe0d8085ba8cf9845394c1433d89">operator!=</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM2) const</td></tr>
  150. <tr class="separator:a13b1fe0d8085ba8cf9845394c1433d89"><td class="memSeparator" colspan="2">&#160;</td></tr>
  151. <tr class="memitem:a69e383afe2897a0179fdeb7a418d961d" id="r_a69e383afe2897a0179fdeb7a418d961d"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a69e383afe2897a0179fdeb7a418d961d">IsClose</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM2, float inMaxDistSq=1.0e-12f) const</td></tr>
  152. <tr class="memdesc:a69e383afe2897a0179fdeb7a418d961d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if two matrices are close. <br /></td></tr>
  153. <tr class="separator:a69e383afe2897a0179fdeb7a418d961d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  154. <tr class="memitem:ae64ca2f2b40571def45845fecd505c64" id="r_ae64ca2f2b40571def45845fecd505c64"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae64ca2f2b40571def45845fecd505c64">operator*</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM) const</td></tr>
  155. <tr class="memdesc:ae64ca2f2b40571def45845fecd505c64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply matrix by matrix. <br /></td></tr>
  156. <tr class="separator:ae64ca2f2b40571def45845fecd505c64"><td class="memSeparator" colspan="2">&#160;</td></tr>
  157. <tr class="memitem:a8bbaea1aac790dd55a59b25a9ef7cd16" id="r_a8bbaea1aac790dd55a59b25a9ef7cd16"><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="#a8bbaea1aac790dd55a59b25a9ef7cd16">operator*</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV) const</td></tr>
  158. <tr class="memdesc:a8bbaea1aac790dd55a59b25a9ef7cd16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector by matrix. <br /></td></tr>
  159. <tr class="separator:a8bbaea1aac790dd55a59b25a9ef7cd16"><td class="memSeparator" colspan="2">&#160;</td></tr>
  160. <tr class="memitem:a087d4151cced62fdce757c1895d2d834" id="r_a087d4151cced62fdce757c1895d2d834"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_vec4.html">Vec4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a087d4151cced62fdce757c1895d2d834">operator*</a> (<a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inV) const</td></tr>
  161. <tr class="separator:a087d4151cced62fdce757c1895d2d834"><td class="memSeparator" colspan="2">&#160;</td></tr>
  162. <tr class="memitem:ab599aaeab3e4b832f7f4097816650b14" id="r_ab599aaeab3e4b832f7f4097816650b14"><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="#ab599aaeab3e4b832f7f4097816650b14">Multiply3x3</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV) const</td></tr>
  163. <tr class="memdesc:ab599aaeab3e4b832f7f4097816650b14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector by only 3x3 part of the matrix. <br /></td></tr>
  164. <tr class="separator:ab599aaeab3e4b832f7f4097816650b14"><td class="memSeparator" colspan="2">&#160;</td></tr>
  165. <tr class="memitem:a3ed66bc4c5e8e010657bd5bb109f1406" id="r_a3ed66bc4c5e8e010657bd5bb109f1406"><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="#a3ed66bc4c5e8e010657bd5bb109f1406">Multiply3x3Transposed</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV) const</td></tr>
  166. <tr class="memdesc:a3ed66bc4c5e8e010657bd5bb109f1406"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply vector by only 3x3 part of the transpose of the matrix ( \(result = this^T \: inV\)) <br /></td></tr>
  167. <tr class="separator:a3ed66bc4c5e8e010657bd5bb109f1406"><td class="memSeparator" colspan="2">&#160;</td></tr>
  168. <tr class="memitem:a03490bf0526b79cc14125d9e6500576e" id="r_a03490bf0526b79cc14125d9e6500576e"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a03490bf0526b79cc14125d9e6500576e">Multiply3x3</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM) const</td></tr>
  169. <tr class="memdesc:a03490bf0526b79cc14125d9e6500576e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply 3x3 matrix by 3x3 matrix. <br /></td></tr>
  170. <tr class="separator:a03490bf0526b79cc14125d9e6500576e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  171. <tr class="memitem:a1c302e1f10c6c5a233aed4a540e0f598" id="r_a1c302e1f10c6c5a233aed4a540e0f598"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1c302e1f10c6c5a233aed4a540e0f598">Multiply3x3LeftTransposed</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM) const</td></tr>
  172. <tr class="memdesc:a1c302e1f10c6c5a233aed4a540e0f598"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply transpose of 3x3 matrix by 3x3 matrix ( \(result = this^T \: inM\)) <br /></td></tr>
  173. <tr class="separator:a1c302e1f10c6c5a233aed4a540e0f598"><td class="memSeparator" colspan="2">&#160;</td></tr>
  174. <tr class="memitem:a595ae3cf26d9fb87761e20b6b35d3d10" id="r_a595ae3cf26d9fb87761e20b6b35d3d10"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a595ae3cf26d9fb87761e20b6b35d3d10">Multiply3x3RightTransposed</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM) const</td></tr>
  175. <tr class="memdesc:a595ae3cf26d9fb87761e20b6b35d3d10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply 3x3 matrix by the transpose of a 3x3 matrix ( \(result = this \: inM^T\)) <br /></td></tr>
  176. <tr class="separator:a595ae3cf26d9fb87761e20b6b35d3d10"><td class="memSeparator" colspan="2">&#160;</td></tr>
  177. <tr class="memitem:adde2d0df064c3457190cdc6fb0da5dc3" id="r_adde2d0df064c3457190cdc6fb0da5dc3"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adde2d0df064c3457190cdc6fb0da5dc3">operator*</a> (float inV) const</td></tr>
  178. <tr class="memdesc:adde2d0df064c3457190cdc6fb0da5dc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply matrix with float. <br /></td></tr>
  179. <tr class="separator:adde2d0df064c3457190cdc6fb0da5dc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  180. <tr class="memitem:a2a3d5b10d49ac1eed4eae855a0fd25d9" id="r_a2a3d5b10d49ac1eed4eae855a0fd25d9"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2a3d5b10d49ac1eed4eae855a0fd25d9">operator*=</a> (float inV)</td></tr>
  181. <tr class="memdesc:a2a3d5b10d49ac1eed4eae855a0fd25d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply matrix with float. <br /></td></tr>
  182. <tr class="separator:a2a3d5b10d49ac1eed4eae855a0fd25d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  183. <tr class="memitem:ac0c3181759450b3498b5dc53967f803d" id="r_ac0c3181759450b3498b5dc53967f803d"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac0c3181759450b3498b5dc53967f803d">operator+</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM) const</td></tr>
  184. <tr class="memdesc:ac0c3181759450b3498b5dc53967f803d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Per element addition of matrix. <br /></td></tr>
  185. <tr class="separator:ac0c3181759450b3498b5dc53967f803d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  186. <tr class="memitem:a22b266ee0c8cb215e96edaebc50d2cbf" id="r_a22b266ee0c8cb215e96edaebc50d2cbf"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a22b266ee0c8cb215e96edaebc50d2cbf">operator-</a> () const</td></tr>
  187. <tr class="memdesc:a22b266ee0c8cb215e96edaebc50d2cbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Negate. <br /></td></tr>
  188. <tr class="separator:a22b266ee0c8cb215e96edaebc50d2cbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  189. <tr class="memitem:acb281c6516de9bfd045aa029f95ba0d0" id="r_acb281c6516de9bfd045aa029f95ba0d0"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acb281c6516de9bfd045aa029f95ba0d0">operator-</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM) const</td></tr>
  190. <tr class="memdesc:acb281c6516de9bfd045aa029f95ba0d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Per element subtraction of matrix. <br /></td></tr>
  191. <tr class="separator:acb281c6516de9bfd045aa029f95ba0d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  192. <tr class="memitem:a60273e38c2e5071066f14905698ef994" id="r_a60273e38c2e5071066f14905698ef994"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a60273e38c2e5071066f14905698ef994">operator+=</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM)</td></tr>
  193. <tr class="memdesc:a60273e38c2e5071066f14905698ef994"><td class="mdescLeft">&#160;</td><td class="mdescRight">Per element addition of matrix. <br /></td></tr>
  194. <tr class="separator:a60273e38c2e5071066f14905698ef994"><td class="memSeparator" colspan="2">&#160;</td></tr>
  195. <tr class="memitem:aa71942f9a684cf2e0e55f8c9ba8f5b99" id="r_aa71942f9a684cf2e0e55f8c9ba8f5b99"><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="#aa71942f9a684cf2e0e55f8c9ba8f5b99">GetAxisX</a> () const</td></tr>
  196. <tr class="memdesc:aa71942f9a684cf2e0e55f8c9ba8f5b99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access to the columns. <br /></td></tr>
  197. <tr class="separator:aa71942f9a684cf2e0e55f8c9ba8f5b99"><td class="memSeparator" colspan="2">&#160;</td></tr>
  198. <tr class="memitem:a04aad46839683a6d3d82a400c3bbe576" id="r_a04aad46839683a6d3d82a400c3bbe576"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a04aad46839683a6d3d82a400c3bbe576">SetAxisX</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  199. <tr class="separator:a04aad46839683a6d3d82a400c3bbe576"><td class="memSeparator" colspan="2">&#160;</td></tr>
  200. <tr class="memitem:a03967bba6efbe4a03e6f1b888e1436a7" id="r_a03967bba6efbe4a03e6f1b888e1436a7"><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="#a03967bba6efbe4a03e6f1b888e1436a7">GetAxisY</a> () const</td></tr>
  201. <tr class="separator:a03967bba6efbe4a03e6f1b888e1436a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  202. <tr class="memitem:ada218e0e59422cb1b0b38a534b7379b8" id="r_ada218e0e59422cb1b0b38a534b7379b8"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ada218e0e59422cb1b0b38a534b7379b8">SetAxisY</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  203. <tr class="separator:ada218e0e59422cb1b0b38a534b7379b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  204. <tr class="memitem:a19fc28cb3d425e8b4f462c939bc595fa" id="r_a19fc28cb3d425e8b4f462c939bc595fa"><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="#a19fc28cb3d425e8b4f462c939bc595fa">GetAxisZ</a> () const</td></tr>
  205. <tr class="separator:a19fc28cb3d425e8b4f462c939bc595fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
  206. <tr class="memitem:a469e83f0fb0c2975b4506c682721c3e3" id="r_a469e83f0fb0c2975b4506c682721c3e3"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a469e83f0fb0c2975b4506c682721c3e3">SetAxisZ</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  207. <tr class="separator:a469e83f0fb0c2975b4506c682721c3e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  208. <tr class="memitem:abd89da8ac7b4e4c5b87c02caabbf10b8" id="r_abd89da8ac7b4e4c5b87c02caabbf10b8"><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="#abd89da8ac7b4e4c5b87c02caabbf10b8">GetTranslation</a> () const</td></tr>
  209. <tr class="separator:abd89da8ac7b4e4c5b87c02caabbf10b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  210. <tr class="memitem:ae89e485f03d9a5dbaf317c057f4eac30" id="r_ae89e485f03d9a5dbaf317c057f4eac30"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae89e485f03d9a5dbaf317c057f4eac30">SetTranslation</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  211. <tr class="separator:ae89e485f03d9a5dbaf317c057f4eac30"><td class="memSeparator" colspan="2">&#160;</td></tr>
  212. <tr class="memitem:a6eb3cbc676f2ce57f63bcee9d0b40171" id="r_a6eb3cbc676f2ce57f63bcee9d0b40171"><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="#a6eb3cbc676f2ce57f63bcee9d0b40171">GetDiagonal3</a> () const</td></tr>
  213. <tr class="separator:a6eb3cbc676f2ce57f63bcee9d0b40171"><td class="memSeparator" colspan="2">&#160;</td></tr>
  214. <tr class="memitem:ab385ba1f663f9de2137d816c0fc4fb3f" id="r_ab385ba1f663f9de2137d816c0fc4fb3f"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab385ba1f663f9de2137d816c0fc4fb3f">SetDiagonal3</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  215. <tr class="separator:ab385ba1f663f9de2137d816c0fc4fb3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  216. <tr class="memitem:aefb86266992d843e5de8e53cdbc5bdc6" id="r_aefb86266992d843e5de8e53cdbc5bdc6"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_vec4.html">Vec4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aefb86266992d843e5de8e53cdbc5bdc6">GetDiagonal4</a> () const</td></tr>
  217. <tr class="separator:aefb86266992d843e5de8e53cdbc5bdc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  218. <tr class="memitem:a335f4cec86c172f07bd0667909a54a7e" id="r_a335f4cec86c172f07bd0667909a54a7e"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a335f4cec86c172f07bd0667909a54a7e">SetDiagonal4</a> (<a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inV)</td></tr>
  219. <tr class="separator:a335f4cec86c172f07bd0667909a54a7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  220. <tr class="memitem:a4d34298d2040673cfd9b86c5cb83a5b9" id="r_a4d34298d2040673cfd9b86c5cb83a5b9"><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="#a4d34298d2040673cfd9b86c5cb83a5b9">GetColumn3</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inCol) const</td></tr>
  221. <tr class="separator:a4d34298d2040673cfd9b86c5cb83a5b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  222. <tr class="memitem:a1659c59725a85b2bb991e333381c87fe" id="r_a1659c59725a85b2bb991e333381c87fe"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1659c59725a85b2bb991e333381c87fe">SetColumn3</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inCol, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  223. <tr class="separator:a1659c59725a85b2bb991e333381c87fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
  224. <tr class="memitem:a97c469ed78611039f85415381a67f312" id="r_a97c469ed78611039f85415381a67f312"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_vec4.html">Vec4</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a97c469ed78611039f85415381a67f312">GetColumn4</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inCol) const</td></tr>
  225. <tr class="separator:a97c469ed78611039f85415381a67f312"><td class="memSeparator" colspan="2">&#160;</td></tr>
  226. <tr class="memitem:ace29aeaafa5bbff8a159105fee78e2d2" id="r_ace29aeaafa5bbff8a159105fee78e2d2"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ace29aeaafa5bbff8a159105fee78e2d2">SetColumn4</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inCol, <a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a> inV)</td></tr>
  227. <tr class="separator:ace29aeaafa5bbff8a159105fee78e2d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
  228. <tr class="memitem:a1f51050b35215131c7da9a7de78a3e1e" id="r_a1f51050b35215131c7da9a7de78a3e1e"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1f51050b35215131c7da9a7de78a3e1e">StoreFloat4x4</a> (<a class="el" href="class_float4.html">Float4</a> *outV) const</td></tr>
  229. <tr class="memdesc:a1f51050b35215131c7da9a7de78a3e1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Store matrix to memory. <br /></td></tr>
  230. <tr class="separator:a1f51050b35215131c7da9a7de78a3e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  231. <tr class="memitem:a388723db2d35de31efcee6ff0cfb711d" id="r_a388723db2d35de31efcee6ff0cfb711d"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a388723db2d35de31efcee6ff0cfb711d">Transposed</a> () const</td></tr>
  232. <tr class="memdesc:a388723db2d35de31efcee6ff0cfb711d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transpose matrix. <br /></td></tr>
  233. <tr class="separator:a388723db2d35de31efcee6ff0cfb711d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  234. <tr class="memitem:a29830ba9d80d31e00d30abcc0c099e7c" id="r_a29830ba9d80d31e00d30abcc0c099e7c"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a29830ba9d80d31e00d30abcc0c099e7c">Transposed3x3</a> () const</td></tr>
  235. <tr class="memdesc:a29830ba9d80d31e00d30abcc0c099e7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transpose 3x3 subpart of matrix. <br /></td></tr>
  236. <tr class="separator:a29830ba9d80d31e00d30abcc0c099e7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  237. <tr class="memitem:aae48032b0b6d27778617b8546135b057" id="r_aae48032b0b6d27778617b8546135b057"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aae48032b0b6d27778617b8546135b057">Inversed</a> () const</td></tr>
  238. <tr class="memdesc:aae48032b0b6d27778617b8546135b057"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inverse 4x4 matrix. <br /></td></tr>
  239. <tr class="separator:aae48032b0b6d27778617b8546135b057"><td class="memSeparator" colspan="2">&#160;</td></tr>
  240. <tr class="memitem:af962ad0ed20cb6112f8249cb9573c233" id="r_af962ad0ed20cb6112f8249cb9573c233"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af962ad0ed20cb6112f8249cb9573c233">InversedRotationTranslation</a> () const</td></tr>
  241. <tr class="memdesc:af962ad0ed20cb6112f8249cb9573c233"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inverse 4x4 matrix when it only contains rotation and translation. <br /></td></tr>
  242. <tr class="separator:af962ad0ed20cb6112f8249cb9573c233"><td class="memSeparator" colspan="2">&#160;</td></tr>
  243. <tr class="memitem:a2b5ba5e6c68b059ae61a1bbc1b7fbb87" id="r_a2b5ba5e6c68b059ae61a1bbc1b7fbb87"><td class="memItemLeft" align="right" valign="top">JPH_INLINE float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2b5ba5e6c68b059ae61a1bbc1b7fbb87">GetDeterminant3x3</a> () const</td></tr>
  244. <tr class="memdesc:a2b5ba5e6c68b059ae61a1bbc1b7fbb87"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the determinant of a 3x3 matrix. <br /></td></tr>
  245. <tr class="separator:a2b5ba5e6c68b059ae61a1bbc1b7fbb87"><td class="memSeparator" colspan="2">&#160;</td></tr>
  246. <tr class="memitem:a3b9c1e6d186b9ad59e81255c64049f22" id="r_a3b9c1e6d186b9ad59e81255c64049f22"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3b9c1e6d186b9ad59e81255c64049f22">Adjointed3x3</a> () const</td></tr>
  247. <tr class="memdesc:a3b9c1e6d186b9ad59e81255c64049f22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the adjoint of a 3x3 matrix. <br /></td></tr>
  248. <tr class="separator:a3b9c1e6d186b9ad59e81255c64049f22"><td class="memSeparator" colspan="2">&#160;</td></tr>
  249. <tr class="memitem:ad9f5df546296a7bdc816e6be5627926b" id="r_ad9f5df546296a7bdc816e6be5627926b"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad9f5df546296a7bdc816e6be5627926b">Inversed3x3</a> () const</td></tr>
  250. <tr class="memdesc:ad9f5df546296a7bdc816e6be5627926b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inverse 3x3 matrix. <br /></td></tr>
  251. <tr class="separator:ad9f5df546296a7bdc816e6be5627926b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  252. <tr class="memitem:a814c04077820ea83f444ccc5ae48299f" id="r_a814c04077820ea83f444ccc5ae48299f"><td class="memItemLeft" align="right" valign="top">JPH_INLINE bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a814c04077820ea83f444ccc5ae48299f">SetInversed3x3</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM)</td></tr>
  253. <tr class="memdesc:a814c04077820ea83f444ccc5ae48299f"><td class="mdescLeft">&#160;</td><td class="mdescRight">*this = inM.Inversed3x3(), returns false if the matrix is singular in which case *this is unchanged <br /></td></tr>
  254. <tr class="separator:a814c04077820ea83f444ccc5ae48299f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  255. <tr class="memitem:a4cc37dcc7b9be4ab8f8e94bf49e06204" id="r_a4cc37dcc7b9be4ab8f8e94bf49e06204"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4cc37dcc7b9be4ab8f8e94bf49e06204">GetRotation</a> () const</td></tr>
  256. <tr class="memdesc:a4cc37dcc7b9be4ab8f8e94bf49e06204"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get rotation part only (note: retains the first 3 values from the bottom row) <br /></td></tr>
  257. <tr class="separator:a4cc37dcc7b9be4ab8f8e94bf49e06204"><td class="memSeparator" colspan="2">&#160;</td></tr>
  258. <tr class="memitem:a564ee35616cca9a01624760e58bfb9ca" id="r_a564ee35616cca9a01624760e58bfb9ca"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a564ee35616cca9a01624760e58bfb9ca">GetRotationSafe</a> () const</td></tr>
  259. <tr class="memdesc:a564ee35616cca9a01624760e58bfb9ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get rotation part only (note: also clears the bottom row) <br /></td></tr>
  260. <tr class="separator:a564ee35616cca9a01624760e58bfb9ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
  261. <tr class="memitem:abd5dc78238403195cbd0cde87f40af49" id="r_abd5dc78238403195cbd0cde87f40af49"><td class="memItemLeft" align="right" valign="top">JPH_INLINE void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abd5dc78238403195cbd0cde87f40af49">SetRotation</a> (<a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inRotation)</td></tr>
  262. <tr class="memdesc:abd5dc78238403195cbd0cde87f40af49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the rotation part of this matrix (the first 3 columns) <br /></td></tr>
  263. <tr class="separator:abd5dc78238403195cbd0cde87f40af49"><td class="memSeparator" colspan="2">&#160;</td></tr>
  264. <tr class="memitem:a1e977c53b5f6a0c03f8da33ebef2c05a" id="r_a1e977c53b5f6a0c03f8da33ebef2c05a"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_quat.html">Quat</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1e977c53b5f6a0c03f8da33ebef2c05a">GetQuaternion</a> () const</td></tr>
  265. <tr class="memdesc:a1e977c53b5f6a0c03f8da33ebef2c05a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to quaternion. <br /></td></tr>
  266. <tr class="separator:a1e977c53b5f6a0c03f8da33ebef2c05a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  267. <tr class="memitem:a2bb16051fdd324325ac9be5e5e7619b7" id="r_a2bb16051fdd324325ac9be5e5e7619b7"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2bb16051fdd324325ac9be5e5e7619b7">GetDirectionPreservingMatrix</a> () const</td></tr>
  268. <tr class="memdesc:a2bb16051fdd324325ac9be5e5e7619b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get matrix that transforms a direction with the same transform as this matrix (length is not preserved) <br /></td></tr>
  269. <tr class="separator:a2bb16051fdd324325ac9be5e5e7619b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  270. <tr class="memitem:a16f19b423139db52503bb8d6526d947f" id="r_a16f19b423139db52503bb8d6526d947f"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a16f19b423139db52503bb8d6526d947f">PreTranslated</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inTranslation) const</td></tr>
  271. <tr class="memdesc:a16f19b423139db52503bb8d6526d947f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre multiply by translation matrix: result = this * Mat44::sTranslation(inTranslation) <br /></td></tr>
  272. <tr class="separator:a16f19b423139db52503bb8d6526d947f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  273. <tr class="memitem:a16b90363d2e120bd570c4200e29f5ba6" id="r_a16b90363d2e120bd570c4200e29f5ba6"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a16b90363d2e120bd570c4200e29f5ba6">PostTranslated</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inTranslation) const</td></tr>
  274. <tr class="memdesc:a16b90363d2e120bd570c4200e29f5ba6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Post multiply by translation matrix: result = Mat44::sTranslation(inTranslation) * this (i.e. add inTranslation to the 4-th column) <br /></td></tr>
  275. <tr class="separator:a16b90363d2e120bd570c4200e29f5ba6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  276. <tr class="memitem:af9c9948eced621a54424f05c397824dd" id="r_af9c9948eced621a54424f05c397824dd"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af9c9948eced621a54424f05c397824dd">PreScaled</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inScale) const</td></tr>
  277. <tr class="memdesc:af9c9948eced621a54424f05c397824dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scale a matrix: result = this * Mat44::sScale(inScale) <br /></td></tr>
  278. <tr class="separator:af9c9948eced621a54424f05c397824dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
  279. <tr class="memitem:a6503ccd1384b6681d191c327961fbb6d" id="r_a6503ccd1384b6681d191c327961fbb6d"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6503ccd1384b6681d191c327961fbb6d">PostScaled</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inScale) const</td></tr>
  280. <tr class="memdesc:a6503ccd1384b6681d191c327961fbb6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scale a matrix: result = Mat44::sScale(inScale) * this. <br /></td></tr>
  281. <tr class="separator:a6503ccd1384b6681d191c327961fbb6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  282. <tr class="memitem:aa11f571efdce00289f87a65317fbdd58" id="r_aa11f571efdce00289f87a65317fbdd58"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa11f571efdce00289f87a65317fbdd58">Decompose</a> (<a class="el" href="class_vec3.html">Vec3</a> &amp;outScale) const</td></tr>
  283. <tr class="separator:aa11f571efdce00289f87a65317fbdd58"><td class="memSeparator" colspan="2">&#160;</td></tr>
  284. <tr class="memitem:a3445a728646fe8ad80381a0e55ea2289" id="r_a3445a728646fe8ad80381a0e55ea2289"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3445a728646fe8ad80381a0e55ea2289">ToMat44</a> () const</td></tr>
  285. <tr class="memdesc:a3445a728646fe8ad80381a0e55ea2289"><td class="mdescLeft">&#160;</td><td class="mdescRight">In single precision mode just return the matrix itself. <br /></td></tr>
  286. <tr class="separator:a3445a728646fe8ad80381a0e55ea2289"><td class="memSeparator" colspan="2">&#160;</td></tr>
  287. </table><table class="memberdecls">
  288. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
  289. Static Public Member Functions</h2></td></tr>
  290. <tr class="memitem:a1e3a8da1cf3a631ffaf478ca3f6bb1ed" id="r_a1e3a8da1cf3a631ffaf478ca3f6bb1ed"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1e3a8da1cf3a631ffaf478ca3f6bb1ed">sZero</a> ()</td></tr>
  291. <tr class="memdesc:a1e3a8da1cf3a631ffaf478ca3f6bb1ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Zero matrix. <br /></td></tr>
  292. <tr class="separator:a1e3a8da1cf3a631ffaf478ca3f6bb1ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
  293. <tr class="memitem:a1b8c82590f5034e8c7f35157fdfd944f" id="r_a1b8c82590f5034e8c7f35157fdfd944f"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1b8c82590f5034e8c7f35157fdfd944f">sIdentity</a> ()</td></tr>
  294. <tr class="memdesc:a1b8c82590f5034e8c7f35157fdfd944f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Identity matrix. <br /></td></tr>
  295. <tr class="separator:a1b8c82590f5034e8c7f35157fdfd944f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  296. <tr class="memitem:a5c6898814660114482bbfc4908c3ad37" id="r_a5c6898814660114482bbfc4908c3ad37"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5c6898814660114482bbfc4908c3ad37">sNaN</a> ()</td></tr>
  297. <tr class="memdesc:a5c6898814660114482bbfc4908c3ad37"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_matrix.html" title="Templatized matrix class.">Matrix</a> filled with NaN's. <br /></td></tr>
  298. <tr class="separator:a5c6898814660114482bbfc4908c3ad37"><td class="memSeparator" colspan="2">&#160;</td></tr>
  299. <tr class="memitem:a3e2a056f901661fd715528c325df455d" id="r_a3e2a056f901661fd715528c325df455d"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3e2a056f901661fd715528c325df455d">sLoadFloat4x4</a> (const <a class="el" href="class_float4.html">Float4</a> *inV)</td></tr>
  300. <tr class="memdesc:a3e2a056f901661fd715528c325df455d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load 16 floats from memory. <br /></td></tr>
  301. <tr class="separator:a3e2a056f901661fd715528c325df455d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  302. <tr class="memitem:a8bcbeea9029c5251ff4ea9bd4d518f4c" id="r_a8bcbeea9029c5251ff4ea9bd4d518f4c"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8bcbeea9029c5251ff4ea9bd4d518f4c">sLoadFloat4x4Aligned</a> (const <a class="el" href="class_float4.html">Float4</a> *inV)</td></tr>
  303. <tr class="memdesc:a8bcbeea9029c5251ff4ea9bd4d518f4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Load 16 floats from memory, 16 bytes aligned. <br /></td></tr>
  304. <tr class="separator:a8bcbeea9029c5251ff4ea9bd4d518f4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  305. <tr class="memitem:af243335b6d6acec2cf71d4cdc79bdff4" id="r_af243335b6d6acec2cf71d4cdc79bdff4"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af243335b6d6acec2cf71d4cdc79bdff4">sRotationX</a> (float inX)</td></tr>
  306. <tr class="memdesc:af243335b6d6acec2cf71d4cdc79bdff4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rotate around X, Y or Z axis (angle in radians) <br /></td></tr>
  307. <tr class="separator:af243335b6d6acec2cf71d4cdc79bdff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  308. <tr class="memitem:afc881fca3e2d653815f0e7742ad4dce8" id="r_afc881fca3e2d653815f0e7742ad4dce8"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afc881fca3e2d653815f0e7742ad4dce8">sRotationY</a> (float inY)</td></tr>
  309. <tr class="separator:afc881fca3e2d653815f0e7742ad4dce8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  310. <tr class="memitem:a3d393e34a43a22b0fbd2aba60f364434" id="r_a3d393e34a43a22b0fbd2aba60f364434"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3d393e34a43a22b0fbd2aba60f364434">sRotationZ</a> (float inZ)</td></tr>
  311. <tr class="separator:a3d393e34a43a22b0fbd2aba60f364434"><td class="memSeparator" colspan="2">&#160;</td></tr>
  312. <tr class="memitem:ac3109f2d950061c0b4de57e76a132634" id="r_ac3109f2d950061c0b4de57e76a132634"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac3109f2d950061c0b4de57e76a132634">sRotation</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inAxis, float inAngle)</td></tr>
  313. <tr class="memdesc:ac3109f2d950061c0b4de57e76a132634"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rotate around arbitrary axis. <br /></td></tr>
  314. <tr class="separator:ac3109f2d950061c0b4de57e76a132634"><td class="memSeparator" colspan="2">&#160;</td></tr>
  315. <tr class="memitem:a57c9e6198fcf68a50cb33609fac0980a" id="r_a57c9e6198fcf68a50cb33609fac0980a"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a57c9e6198fcf68a50cb33609fac0980a">sRotation</a> (<a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inQuat)</td></tr>
  316. <tr class="memdesc:a57c9e6198fcf68a50cb33609fac0980a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rotate from quaternion. <br /></td></tr>
  317. <tr class="separator:a57c9e6198fcf68a50cb33609fac0980a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  318. <tr class="memitem:a8cc7184902ce670d0822a28a8906df52" id="r_a8cc7184902ce670d0822a28a8906df52"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8cc7184902ce670d0822a28a8906df52">sTranslation</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  319. <tr class="memdesc:a8cc7184902ce670d0822a28a8906df52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get matrix that translates. <br /></td></tr>
  320. <tr class="separator:a8cc7184902ce670d0822a28a8906df52"><td class="memSeparator" colspan="2">&#160;</td></tr>
  321. <tr class="memitem:aba5427f45393b40263d52ec614cfa985" id="r_aba5427f45393b40263d52ec614cfa985"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aba5427f45393b40263d52ec614cfa985">sRotationTranslation</a> (<a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inR, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inT)</td></tr>
  322. <tr class="memdesc:aba5427f45393b40263d52ec614cfa985"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get matrix that rotates and translates. <br /></td></tr>
  323. <tr class="separator:aba5427f45393b40263d52ec614cfa985"><td class="memSeparator" colspan="2">&#160;</td></tr>
  324. <tr class="memitem:ac8be820a7eeb44bf570abb8dc01f4c59" id="r_ac8be820a7eeb44bf570abb8dc01f4c59"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac8be820a7eeb44bf570abb8dc01f4c59">sInverseRotationTranslation</a> (<a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inR, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inT)</td></tr>
  325. <tr class="memdesc:ac8be820a7eeb44bf570abb8dc01f4c59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get inverse matrix of sRotationTranslation. <br /></td></tr>
  326. <tr class="separator:ac8be820a7eeb44bf570abb8dc01f4c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
  327. <tr class="memitem:a858ecd5c9c124039f5c7adab5bcf5041" id="r_a858ecd5c9c124039f5c7adab5bcf5041"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a858ecd5c9c124039f5c7adab5bcf5041">sScale</a> (float inScale)</td></tr>
  328. <tr class="memdesc:a858ecd5c9c124039f5c7adab5bcf5041"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get matrix that scales uniformly. <br /></td></tr>
  329. <tr class="separator:a858ecd5c9c124039f5c7adab5bcf5041"><td class="memSeparator" colspan="2">&#160;</td></tr>
  330. <tr class="memitem:a6059fd2921e0dc33405fe05a2d3aaa76" id="r_a6059fd2921e0dc33405fe05a2d3aaa76"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6059fd2921e0dc33405fe05a2d3aaa76">sScale</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  331. <tr class="memdesc:a6059fd2921e0dc33405fe05a2d3aaa76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get matrix that scales (produces a matrix with (inV, 1) on its diagonal) <br /></td></tr>
  332. <tr class="separator:a6059fd2921e0dc33405fe05a2d3aaa76"><td class="memSeparator" colspan="2">&#160;</td></tr>
  333. <tr class="memitem:a44ee960223f2270ce7ea2840418e3c72" id="r_a44ee960223f2270ce7ea2840418e3c72"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a44ee960223f2270ce7ea2840418e3c72">sOuterProduct</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV1, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV2)</td></tr>
  334. <tr class="memdesc:a44ee960223f2270ce7ea2840418e3c72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get outer product of inV and inV2 (equivalent to \(inV1 \otimes inV2\)) <br /></td></tr>
  335. <tr class="separator:a44ee960223f2270ce7ea2840418e3c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
  336. <tr class="memitem:a23d5a6de1a0058d380a0bf42d263c659" id="r_a23d5a6de1a0058d380a0bf42d263c659"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a23d5a6de1a0058d380a0bf42d263c659">sCrossProduct</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inV)</td></tr>
  337. <tr class="memdesc:a23d5a6de1a0058d380a0bf42d263c659"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get matrix that represents a cross product \(A \times B = \text{sCrossProduct}(A) \: B\). <br /></td></tr>
  338. <tr class="separator:a23d5a6de1a0058d380a0bf42d263c659"><td class="memSeparator" colspan="2">&#160;</td></tr>
  339. <tr class="memitem:adca3adc84118200afa5f4203164d241f" id="r_adca3adc84118200afa5f4203164d241f"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adca3adc84118200afa5f4203164d241f">sQuatLeftMultiply</a> (<a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inQ)</td></tr>
  340. <tr class="memdesc:adca3adc84118200afa5f4203164d241f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns matrix ML so that \(ML(q) \: p = q \: p\) (where p and q are quaternions) <br /></td></tr>
  341. <tr class="separator:adca3adc84118200afa5f4203164d241f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  342. <tr class="memitem:a2b688da0262b9096bfac9ddfa2c27e52" id="r_a2b688da0262b9096bfac9ddfa2c27e52"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2b688da0262b9096bfac9ddfa2c27e52">sQuatRightMultiply</a> (<a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inQ)</td></tr>
  343. <tr class="memdesc:a2b688da0262b9096bfac9ddfa2c27e52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns matrix MR so that \(MR(q) \: p = p \: q\) (where p and q are quaternions) <br /></td></tr>
  344. <tr class="separator:a2b688da0262b9096bfac9ddfa2c27e52"><td class="memSeparator" colspan="2">&#160;</td></tr>
  345. <tr class="memitem:a48f32e1e7f27b3eeaa8913d53b2c808f" id="r_a48f32e1e7f27b3eeaa8913d53b2c808f"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a48f32e1e7f27b3eeaa8913d53b2c808f">sLookAt</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inPos, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inTarget, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inUp)</td></tr>
  346. <tr class="separator:a48f32e1e7f27b3eeaa8913d53b2c808f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  347. <tr class="memitem:aef3d368ff37b2b927b1f74573371a06e" id="r_aef3d368ff37b2b927b1f74573371a06e"><td class="memItemLeft" align="right" valign="top">static JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aef3d368ff37b2b927b1f74573371a06e">sPerspective</a> (float inFovY, float inAspect, float inNear, float inFar)</td></tr>
  348. <tr class="memdesc:aef3d368ff37b2b927b1f74573371a06e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a right-handed perspective projection matrix. <br /></td></tr>
  349. <tr class="separator:aef3d368ff37b2b927b1f74573371a06e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  350. </table><table class="memberdecls">
  351. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
  352. Friends</h2></td></tr>
  353. <tr class="memitem:afe860f899612b75ff8be07c018614c5b" id="r_afe860f899612b75ff8be07c018614c5b"><td class="memItemLeft" align="right" valign="top">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afe860f899612b75ff8be07c018614c5b">operator*</a> (float inV, <a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM)</td></tr>
  354. <tr class="separator:afe860f899612b75ff8be07c018614c5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  355. <tr class="memitem:abc0855ee1ce37289515c5b55dfeac1a6" id="r_abc0855ee1ce37289515c5b55dfeac1a6"><td class="memItemLeft" align="right" valign="top">ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abc0855ee1ce37289515c5b55dfeac1a6">operator&lt;&lt;</a> (ostream &amp;inStream, <a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a> inM)</td></tr>
  356. <tr class="memdesc:abc0855ee1ce37289515c5b55dfeac1a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">To String. <br /></td></tr>
  357. <tr class="separator:abc0855ee1ce37289515c5b55dfeac1a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  358. </table>
  359. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  360. <div class="textblock"><p>Holds a 4x4 matrix of floats, but supports also operations on the 3x3 upper left part of the matrix. </p>
  361. </div><h2 class="groupheader">Member Typedef Documentation</h2>
  362. <a id="af683e408c0736cfaeabba6c87f6308ea" name="af683e408c0736cfaeabba6c87f6308ea"></a>
  363. <h2 class="memtitle"><span class="permalink"><a href="#af683e408c0736cfaeabba6c87f6308ea">&#9670;&#160;</a></span>ArgType</h2>
  364. <div class="memitem">
  365. <div class="memproto">
  366. <table class="memname">
  367. <tr>
  368. <td class="memname">using <a class="el" href="#af683e408c0736cfaeabba6c87f6308ea">Mat44::ArgType</a> = <a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td>
  369. </tr>
  370. </table>
  371. </div><div class="memdoc">
  372. </div>
  373. </div>
  374. <a id="a3aa8910fb3ed0cba6463518fe7d52328" name="a3aa8910fb3ed0cba6463518fe7d52328"></a>
  375. <h2 class="memtitle"><span class="permalink"><a href="#a3aa8910fb3ed0cba6463518fe7d52328">&#9670;&#160;</a></span>Type</h2>
  376. <div class="memitem">
  377. <div class="memproto">
  378. <table class="memname">
  379. <tr>
  380. <td class="memname">using <a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Mat44::Type</a> = <a class="el" href="class_vec4.html#abf8c2cd052f001035442fc47f9b240d7">Vec4::Type</a></td>
  381. </tr>
  382. </table>
  383. </div><div class="memdoc">
  384. </div>
  385. </div>
  386. <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  387. <a id="ad95a3b3f36bf3216574383e3dfb927ed" name="ad95a3b3f36bf3216574383e3dfb927ed"></a>
  388. <h2 class="memtitle"><span class="permalink"><a href="#ad95a3b3f36bf3216574383e3dfb927ed">&#9670;&#160;</a></span>Mat44() <span class="overload">[1/5]</span></h2>
  389. <div class="memitem">
  390. <div class="memproto">
  391. <table class="mlabels">
  392. <tr>
  393. <td class="mlabels-left">
  394. <table class="memname">
  395. <tr>
  396. <td class="memname">Mat44::Mat44 </td>
  397. <td>(</td>
  398. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  399. <td></td>
  400. </tr>
  401. </table>
  402. </td>
  403. <td class="mlabels-right">
  404. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  405. </tr>
  406. </table>
  407. </div><div class="memdoc">
  408. <p>Constructor. </p>
  409. <p>Intentionally not initialized for performance reasons </p>
  410. </div>
  411. </div>
  412. <a id="a9e544288786bacea509de796f7a2a224" name="a9e544288786bacea509de796f7a2a224"></a>
  413. <h2 class="memtitle"><span class="permalink"><a href="#a9e544288786bacea509de796f7a2a224">&#9670;&#160;</a></span>Mat44() <span class="overload">[2/5]</span></h2>
  414. <div class="memitem">
  415. <div class="memproto">
  416. <table class="memname">
  417. <tr>
  418. <td class="memname">Mat44::Mat44 </td>
  419. <td>(</td>
  420. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC1</em></span>, </td>
  421. </tr>
  422. <tr>
  423. <td class="paramkey"></td>
  424. <td></td>
  425. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC2</em></span>, </td>
  426. </tr>
  427. <tr>
  428. <td class="paramkey"></td>
  429. <td></td>
  430. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC3</em></span>, </td>
  431. </tr>
  432. <tr>
  433. <td class="paramkey"></td>
  434. <td></td>
  435. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC4</em></span>&#160;)</td>
  436. </tr>
  437. </table>
  438. </div><div class="memdoc">
  439. </div>
  440. </div>
  441. <a id="a5448dda46fe8a36d0ae9b6168607e3cb" name="a5448dda46fe8a36d0ae9b6168607e3cb"></a>
  442. <h2 class="memtitle"><span class="permalink"><a href="#a5448dda46fe8a36d0ae9b6168607e3cb">&#9670;&#160;</a></span>Mat44() <span class="overload">[3/5]</span></h2>
  443. <div class="memitem">
  444. <div class="memproto">
  445. <table class="memname">
  446. <tr>
  447. <td class="memname">Mat44::Mat44 </td>
  448. <td>(</td>
  449. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC1</em></span>, </td>
  450. </tr>
  451. <tr>
  452. <td class="paramkey"></td>
  453. <td></td>
  454. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC2</em></span>, </td>
  455. </tr>
  456. <tr>
  457. <td class="paramkey"></td>
  458. <td></td>
  459. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inC3</em></span>, </td>
  460. </tr>
  461. <tr>
  462. <td class="paramkey"></td>
  463. <td></td>
  464. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inC4</em></span>&#160;)</td>
  465. </tr>
  466. </table>
  467. </div><div class="memdoc">
  468. </div>
  469. </div>
  470. <a id="ab804bcb6a2583f7bf966d3d5a3a24161" name="ab804bcb6a2583f7bf966d3d5a3a24161"></a>
  471. <h2 class="memtitle"><span class="permalink"><a href="#ab804bcb6a2583f7bf966d3d5a3a24161">&#9670;&#160;</a></span>Mat44() <span class="overload">[4/5]</span></h2>
  472. <div class="memitem">
  473. <div class="memproto">
  474. <table class="mlabels">
  475. <tr>
  476. <td class="mlabels-left">
  477. <table class="memname">
  478. <tr>
  479. <td class="memname">Mat44::Mat44 </td>
  480. <td>(</td>
  481. <td class="paramtype">const <a class="el" href="class_mat44.html">Mat44</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inM2</em></span></td><td>)</td>
  482. <td></td>
  483. </tr>
  484. </table>
  485. </td>
  486. <td class="mlabels-right">
  487. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  488. </tr>
  489. </table>
  490. </div><div class="memdoc">
  491. </div>
  492. </div>
  493. <a id="af8719f405d2de3e6310ba091f79aa518" name="af8719f405d2de3e6310ba091f79aa518"></a>
  494. <h2 class="memtitle"><span class="permalink"><a href="#af8719f405d2de3e6310ba091f79aa518">&#9670;&#160;</a></span>Mat44() <span class="overload">[5/5]</span></h2>
  495. <div class="memitem">
  496. <div class="memproto">
  497. <table class="memname">
  498. <tr>
  499. <td class="memname">Mat44::Mat44 </td>
  500. <td>(</td>
  501. <td class="paramtype"><a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a></td> <td class="paramname"><span class="paramname"><em>inC1</em></span>, </td>
  502. </tr>
  503. <tr>
  504. <td class="paramkey"></td>
  505. <td></td>
  506. <td class="paramtype"><a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a></td> <td class="paramname"><span class="paramname"><em>inC2</em></span>, </td>
  507. </tr>
  508. <tr>
  509. <td class="paramkey"></td>
  510. <td></td>
  511. <td class="paramtype"><a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a></td> <td class="paramname"><span class="paramname"><em>inC3</em></span>, </td>
  512. </tr>
  513. <tr>
  514. <td class="paramkey"></td>
  515. <td></td>
  516. <td class="paramtype"><a class="el" href="#a3aa8910fb3ed0cba6463518fe7d52328">Type</a></td> <td class="paramname"><span class="paramname"><em>inC4</em></span>&#160;)</td>
  517. </tr>
  518. </table>
  519. </div><div class="memdoc">
  520. </div>
  521. </div>
  522. <h2 class="groupheader">Member Function Documentation</h2>
  523. <a id="a3b9c1e6d186b9ad59e81255c64049f22" name="a3b9c1e6d186b9ad59e81255c64049f22"></a>
  524. <h2 class="memtitle"><span class="permalink"><a href="#a3b9c1e6d186b9ad59e81255c64049f22">&#9670;&#160;</a></span>Adjointed3x3()</h2>
  525. <div class="memitem">
  526. <div class="memproto">
  527. <table class="memname">
  528. <tr>
  529. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Adjointed3x3 </td>
  530. <td>(</td>
  531. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  532. <td> const</td>
  533. </tr>
  534. </table>
  535. </div><div class="memdoc">
  536. <p>Get the adjoint of a 3x3 matrix. </p>
  537. </div>
  538. </div>
  539. <a id="aa11f571efdce00289f87a65317fbdd58" name="aa11f571efdce00289f87a65317fbdd58"></a>
  540. <h2 class="memtitle"><span class="permalink"><a href="#aa11f571efdce00289f87a65317fbdd58">&#9670;&#160;</a></span>Decompose()</h2>
  541. <div class="memitem">
  542. <div class="memproto">
  543. <table class="memname">
  544. <tr>
  545. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Decompose </td>
  546. <td>(</td>
  547. <td class="paramtype"><a class="el" href="class_vec3.html">Vec3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>outScale</em></span></td><td>)</td>
  548. <td> const</td>
  549. </tr>
  550. </table>
  551. </div><div class="memdoc">
  552. <p>Decompose a matrix into a rotation &amp; translation part and into a scale part so that: this = return_value * Mat44::sScale(outScale). This equation only holds when the matrix is orthogonal, if it is not the returned matrix will be made orthogonal using the modified Gram-Schmidt algorithm (see: <a href="https://en.wikipedia.org/wiki/Gram%E2%80%93Schmidt_process">https://en.wikipedia.org/wiki/Gram%E2%80%93Schmidt_process</a>) </p>
  553. </div>
  554. </div>
  555. <a id="aa71942f9a684cf2e0e55f8c9ba8f5b99" name="aa71942f9a684cf2e0e55f8c9ba8f5b99"></a>
  556. <h2 class="memtitle"><span class="permalink"><a href="#aa71942f9a684cf2e0e55f8c9ba8f5b99">&#9670;&#160;</a></span>GetAxisX()</h2>
  557. <div class="memitem">
  558. <div class="memproto">
  559. <table class="mlabels">
  560. <tr>
  561. <td class="mlabels-left">
  562. <table class="memname">
  563. <tr>
  564. <td class="memname">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a> Mat44::GetAxisX </td>
  565. <td>(</td>
  566. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  567. <td> const</td>
  568. </tr>
  569. </table>
  570. </td>
  571. <td class="mlabels-right">
  572. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  573. </tr>
  574. </table>
  575. </div><div class="memdoc">
  576. <p>Access to the columns. </p>
  577. </div>
  578. </div>
  579. <a id="a03967bba6efbe4a03e6f1b888e1436a7" name="a03967bba6efbe4a03e6f1b888e1436a7"></a>
  580. <h2 class="memtitle"><span class="permalink"><a href="#a03967bba6efbe4a03e6f1b888e1436a7">&#9670;&#160;</a></span>GetAxisY()</h2>
  581. <div class="memitem">
  582. <div class="memproto">
  583. <table class="mlabels">
  584. <tr>
  585. <td class="mlabels-left">
  586. <table class="memname">
  587. <tr>
  588. <td class="memname">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a> Mat44::GetAxisY </td>
  589. <td>(</td>
  590. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  591. <td> const</td>
  592. </tr>
  593. </table>
  594. </td>
  595. <td class="mlabels-right">
  596. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  597. </tr>
  598. </table>
  599. </div><div class="memdoc">
  600. </div>
  601. </div>
  602. <a id="a19fc28cb3d425e8b4f462c939bc595fa" name="a19fc28cb3d425e8b4f462c939bc595fa"></a>
  603. <h2 class="memtitle"><span class="permalink"><a href="#a19fc28cb3d425e8b4f462c939bc595fa">&#9670;&#160;</a></span>GetAxisZ()</h2>
  604. <div class="memitem">
  605. <div class="memproto">
  606. <table class="mlabels">
  607. <tr>
  608. <td class="mlabels-left">
  609. <table class="memname">
  610. <tr>
  611. <td class="memname">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a> Mat44::GetAxisZ </td>
  612. <td>(</td>
  613. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  614. <td> const</td>
  615. </tr>
  616. </table>
  617. </td>
  618. <td class="mlabels-right">
  619. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  620. </tr>
  621. </table>
  622. </div><div class="memdoc">
  623. </div>
  624. </div>
  625. <a id="a4d34298d2040673cfd9b86c5cb83a5b9" name="a4d34298d2040673cfd9b86c5cb83a5b9"></a>
  626. <h2 class="memtitle"><span class="permalink"><a href="#a4d34298d2040673cfd9b86c5cb83a5b9">&#9670;&#160;</a></span>GetColumn3()</h2>
  627. <div class="memitem">
  628. <div class="memproto">
  629. <table class="mlabels">
  630. <tr>
  631. <td class="mlabels-left">
  632. <table class="memname">
  633. <tr>
  634. <td class="memname">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a> Mat44::GetColumn3 </td>
  635. <td>(</td>
  636. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inCol</em></span></td><td>)</td>
  637. <td> const</td>
  638. </tr>
  639. </table>
  640. </td>
  641. <td class="mlabels-right">
  642. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  643. </tr>
  644. </table>
  645. </div><div class="memdoc">
  646. </div>
  647. </div>
  648. <a id="a97c469ed78611039f85415381a67f312" name="a97c469ed78611039f85415381a67f312"></a>
  649. <h2 class="memtitle"><span class="permalink"><a href="#a97c469ed78611039f85415381a67f312">&#9670;&#160;</a></span>GetColumn4()</h2>
  650. <div class="memitem">
  651. <div class="memproto">
  652. <table class="mlabels">
  653. <tr>
  654. <td class="mlabels-left">
  655. <table class="memname">
  656. <tr>
  657. <td class="memname">JPH_INLINE <a class="el" href="class_vec4.html">Vec4</a> Mat44::GetColumn4 </td>
  658. <td>(</td>
  659. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inCol</em></span></td><td>)</td>
  660. <td> const</td>
  661. </tr>
  662. </table>
  663. </td>
  664. <td class="mlabels-right">
  665. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  666. </tr>
  667. </table>
  668. </div><div class="memdoc">
  669. </div>
  670. </div>
  671. <a id="a2b5ba5e6c68b059ae61a1bbc1b7fbb87" name="a2b5ba5e6c68b059ae61a1bbc1b7fbb87"></a>
  672. <h2 class="memtitle"><span class="permalink"><a href="#a2b5ba5e6c68b059ae61a1bbc1b7fbb87">&#9670;&#160;</a></span>GetDeterminant3x3()</h2>
  673. <div class="memitem">
  674. <div class="memproto">
  675. <table class="memname">
  676. <tr>
  677. <td class="memname">float Mat44::GetDeterminant3x3 </td>
  678. <td>(</td>
  679. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  680. <td> const</td>
  681. </tr>
  682. </table>
  683. </div><div class="memdoc">
  684. <p>Get the determinant of a 3x3 matrix. </p>
  685. </div>
  686. </div>
  687. <a id="a6eb3cbc676f2ce57f63bcee9d0b40171" name="a6eb3cbc676f2ce57f63bcee9d0b40171"></a>
  688. <h2 class="memtitle"><span class="permalink"><a href="#a6eb3cbc676f2ce57f63bcee9d0b40171">&#9670;&#160;</a></span>GetDiagonal3()</h2>
  689. <div class="memitem">
  690. <div class="memproto">
  691. <table class="mlabels">
  692. <tr>
  693. <td class="mlabels-left">
  694. <table class="memname">
  695. <tr>
  696. <td class="memname">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a> Mat44::GetDiagonal3 </td>
  697. <td>(</td>
  698. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  699. <td> const</td>
  700. </tr>
  701. </table>
  702. </td>
  703. <td class="mlabels-right">
  704. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  705. </tr>
  706. </table>
  707. </div><div class="memdoc">
  708. </div>
  709. </div>
  710. <a id="aefb86266992d843e5de8e53cdbc5bdc6" name="aefb86266992d843e5de8e53cdbc5bdc6"></a>
  711. <h2 class="memtitle"><span class="permalink"><a href="#aefb86266992d843e5de8e53cdbc5bdc6">&#9670;&#160;</a></span>GetDiagonal4()</h2>
  712. <div class="memitem">
  713. <div class="memproto">
  714. <table class="mlabels">
  715. <tr>
  716. <td class="mlabels-left">
  717. <table class="memname">
  718. <tr>
  719. <td class="memname">JPH_INLINE <a class="el" href="class_vec4.html">Vec4</a> Mat44::GetDiagonal4 </td>
  720. <td>(</td>
  721. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  722. <td> const</td>
  723. </tr>
  724. </table>
  725. </td>
  726. <td class="mlabels-right">
  727. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  728. </tr>
  729. </table>
  730. </div><div class="memdoc">
  731. </div>
  732. </div>
  733. <a id="a2bb16051fdd324325ac9be5e5e7619b7" name="a2bb16051fdd324325ac9be5e5e7619b7"></a>
  734. <h2 class="memtitle"><span class="permalink"><a href="#a2bb16051fdd324325ac9be5e5e7619b7">&#9670;&#160;</a></span>GetDirectionPreservingMatrix()</h2>
  735. <div class="memitem">
  736. <div class="memproto">
  737. <table class="mlabels">
  738. <tr>
  739. <td class="mlabels-left">
  740. <table class="memname">
  741. <tr>
  742. <td class="memname">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a> Mat44::GetDirectionPreservingMatrix </td>
  743. <td>(</td>
  744. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  745. <td> const</td>
  746. </tr>
  747. </table>
  748. </td>
  749. <td class="mlabels-right">
  750. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  751. </tr>
  752. </table>
  753. </div><div class="memdoc">
  754. <p>Get matrix that transforms a direction with the same transform as this matrix (length is not preserved) </p>
  755. </div>
  756. </div>
  757. <a id="a1e977c53b5f6a0c03f8da33ebef2c05a" name="a1e977c53b5f6a0c03f8da33ebef2c05a"></a>
  758. <h2 class="memtitle"><span class="permalink"><a href="#a1e977c53b5f6a0c03f8da33ebef2c05a">&#9670;&#160;</a></span>GetQuaternion()</h2>
  759. <div class="memitem">
  760. <div class="memproto">
  761. <table class="memname">
  762. <tr>
  763. <td class="memname"><a class="el" href="class_quat.html">Quat</a> Mat44::GetQuaternion </td>
  764. <td>(</td>
  765. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  766. <td> const</td>
  767. </tr>
  768. </table>
  769. </div><div class="memdoc">
  770. <p>Convert to quaternion. </p>
  771. </div>
  772. </div>
  773. <a id="a4cc37dcc7b9be4ab8f8e94bf49e06204" name="a4cc37dcc7b9be4ab8f8e94bf49e06204"></a>
  774. <h2 class="memtitle"><span class="permalink"><a href="#a4cc37dcc7b9be4ab8f8e94bf49e06204">&#9670;&#160;</a></span>GetRotation()</h2>
  775. <div class="memitem">
  776. <div class="memproto">
  777. <table class="memname">
  778. <tr>
  779. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::GetRotation </td>
  780. <td>(</td>
  781. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  782. <td> const</td>
  783. </tr>
  784. </table>
  785. </div><div class="memdoc">
  786. <p>Get rotation part only (note: retains the first 3 values from the bottom row) </p>
  787. </div>
  788. </div>
  789. <a id="a564ee35616cca9a01624760e58bfb9ca" name="a564ee35616cca9a01624760e58bfb9ca"></a>
  790. <h2 class="memtitle"><span class="permalink"><a href="#a564ee35616cca9a01624760e58bfb9ca">&#9670;&#160;</a></span>GetRotationSafe()</h2>
  791. <div class="memitem">
  792. <div class="memproto">
  793. <table class="memname">
  794. <tr>
  795. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::GetRotationSafe </td>
  796. <td>(</td>
  797. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  798. <td> const</td>
  799. </tr>
  800. </table>
  801. </div><div class="memdoc">
  802. <p>Get rotation part only (note: also clears the bottom row) </p>
  803. </div>
  804. </div>
  805. <a id="abd89da8ac7b4e4c5b87c02caabbf10b8" name="abd89da8ac7b4e4c5b87c02caabbf10b8"></a>
  806. <h2 class="memtitle"><span class="permalink"><a href="#abd89da8ac7b4e4c5b87c02caabbf10b8">&#9670;&#160;</a></span>GetTranslation()</h2>
  807. <div class="memitem">
  808. <div class="memproto">
  809. <table class="mlabels">
  810. <tr>
  811. <td class="mlabels-left">
  812. <table class="memname">
  813. <tr>
  814. <td class="memname">JPH_INLINE <a class="el" href="class_vec3.html">Vec3</a> Mat44::GetTranslation </td>
  815. <td>(</td>
  816. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  817. <td> const</td>
  818. </tr>
  819. </table>
  820. </td>
  821. <td class="mlabels-right">
  822. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  823. </tr>
  824. </table>
  825. </div><div class="memdoc">
  826. </div>
  827. </div>
  828. <a id="aae48032b0b6d27778617b8546135b057" name="aae48032b0b6d27778617b8546135b057"></a>
  829. <h2 class="memtitle"><span class="permalink"><a href="#aae48032b0b6d27778617b8546135b057">&#9670;&#160;</a></span>Inversed()</h2>
  830. <div class="memitem">
  831. <div class="memproto">
  832. <table class="memname">
  833. <tr>
  834. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Inversed </td>
  835. <td>(</td>
  836. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  837. <td> const</td>
  838. </tr>
  839. </table>
  840. </div><div class="memdoc">
  841. <p>Inverse 4x4 matrix. </p>
  842. </div>
  843. </div>
  844. <a id="ad9f5df546296a7bdc816e6be5627926b" name="ad9f5df546296a7bdc816e6be5627926b"></a>
  845. <h2 class="memtitle"><span class="permalink"><a href="#ad9f5df546296a7bdc816e6be5627926b">&#9670;&#160;</a></span>Inversed3x3()</h2>
  846. <div class="memitem">
  847. <div class="memproto">
  848. <table class="memname">
  849. <tr>
  850. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Inversed3x3 </td>
  851. <td>(</td>
  852. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  853. <td> const</td>
  854. </tr>
  855. </table>
  856. </div><div class="memdoc">
  857. <p>Inverse 3x3 matrix. </p>
  858. </div>
  859. </div>
  860. <a id="af962ad0ed20cb6112f8249cb9573c233" name="af962ad0ed20cb6112f8249cb9573c233"></a>
  861. <h2 class="memtitle"><span class="permalink"><a href="#af962ad0ed20cb6112f8249cb9573c233">&#9670;&#160;</a></span>InversedRotationTranslation()</h2>
  862. <div class="memitem">
  863. <div class="memproto">
  864. <table class="memname">
  865. <tr>
  866. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::InversedRotationTranslation </td>
  867. <td>(</td>
  868. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  869. <td> const</td>
  870. </tr>
  871. </table>
  872. </div><div class="memdoc">
  873. <p>Inverse 4x4 matrix when it only contains rotation and translation. </p>
  874. </div>
  875. </div>
  876. <a id="a69e383afe2897a0179fdeb7a418d961d" name="a69e383afe2897a0179fdeb7a418d961d"></a>
  877. <h2 class="memtitle"><span class="permalink"><a href="#a69e383afe2897a0179fdeb7a418d961d">&#9670;&#160;</a></span>IsClose()</h2>
  878. <div class="memitem">
  879. <div class="memproto">
  880. <table class="memname">
  881. <tr>
  882. <td class="memname">bool Mat44::IsClose </td>
  883. <td>(</td>
  884. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM2</em></span>, </td>
  885. </tr>
  886. <tr>
  887. <td class="paramkey"></td>
  888. <td></td>
  889. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inMaxDistSq</em></span><span class="paramdefsep"> = </span><span class="paramdefval">1.0e-12f</span>&#160;) const</td>
  890. </tr>
  891. </table>
  892. </div><div class="memdoc">
  893. <p>Test if two matrices are close. </p>
  894. </div>
  895. </div>
  896. <a id="a03490bf0526b79cc14125d9e6500576e" name="a03490bf0526b79cc14125d9e6500576e"></a>
  897. <h2 class="memtitle"><span class="permalink"><a href="#a03490bf0526b79cc14125d9e6500576e">&#9670;&#160;</a></span>Multiply3x3() <span class="overload">[1/2]</span></h2>
  898. <div class="memitem">
  899. <div class="memproto">
  900. <table class="memname">
  901. <tr>
  902. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Multiply3x3 </td>
  903. <td>(</td>
  904. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  905. <td> const</td>
  906. </tr>
  907. </table>
  908. </div><div class="memdoc">
  909. <p>Multiply 3x3 matrix by 3x3 matrix. </p>
  910. </div>
  911. </div>
  912. <a id="ab599aaeab3e4b832f7f4097816650b14" name="ab599aaeab3e4b832f7f4097816650b14"></a>
  913. <h2 class="memtitle"><span class="permalink"><a href="#ab599aaeab3e4b832f7f4097816650b14">&#9670;&#160;</a></span>Multiply3x3() <span class="overload">[2/2]</span></h2>
  914. <div class="memitem">
  915. <div class="memproto">
  916. <table class="memname">
  917. <tr>
  918. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> Mat44::Multiply3x3 </td>
  919. <td>(</td>
  920. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  921. <td> const</td>
  922. </tr>
  923. </table>
  924. </div><div class="memdoc">
  925. <p>Multiply vector by only 3x3 part of the matrix. </p>
  926. </div>
  927. </div>
  928. <a id="a1c302e1f10c6c5a233aed4a540e0f598" name="a1c302e1f10c6c5a233aed4a540e0f598"></a>
  929. <h2 class="memtitle"><span class="permalink"><a href="#a1c302e1f10c6c5a233aed4a540e0f598">&#9670;&#160;</a></span>Multiply3x3LeftTransposed()</h2>
  930. <div class="memitem">
  931. <div class="memproto">
  932. <table class="memname">
  933. <tr>
  934. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Multiply3x3LeftTransposed </td>
  935. <td>(</td>
  936. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  937. <td> const</td>
  938. </tr>
  939. </table>
  940. </div><div class="memdoc">
  941. <p>Multiply transpose of 3x3 matrix by 3x3 matrix ( \(result = this^T \: inM\)) </p>
  942. </div>
  943. </div>
  944. <a id="a595ae3cf26d9fb87761e20b6b35d3d10" name="a595ae3cf26d9fb87761e20b6b35d3d10"></a>
  945. <h2 class="memtitle"><span class="permalink"><a href="#a595ae3cf26d9fb87761e20b6b35d3d10">&#9670;&#160;</a></span>Multiply3x3RightTransposed()</h2>
  946. <div class="memitem">
  947. <div class="memproto">
  948. <table class="memname">
  949. <tr>
  950. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Multiply3x3RightTransposed </td>
  951. <td>(</td>
  952. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  953. <td> const</td>
  954. </tr>
  955. </table>
  956. </div><div class="memdoc">
  957. <p>Multiply 3x3 matrix by the transpose of a 3x3 matrix ( \(result = this \: inM^T\)) </p>
  958. </div>
  959. </div>
  960. <a id="a3ed66bc4c5e8e010657bd5bb109f1406" name="a3ed66bc4c5e8e010657bd5bb109f1406"></a>
  961. <h2 class="memtitle"><span class="permalink"><a href="#a3ed66bc4c5e8e010657bd5bb109f1406">&#9670;&#160;</a></span>Multiply3x3Transposed()</h2>
  962. <div class="memitem">
  963. <div class="memproto">
  964. <table class="memname">
  965. <tr>
  966. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> Mat44::Multiply3x3Transposed </td>
  967. <td>(</td>
  968. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  969. <td> const</td>
  970. </tr>
  971. </table>
  972. </div><div class="memdoc">
  973. <p>Multiply vector by only 3x3 part of the transpose of the matrix ( \(result = this^T \: inV\)) </p>
  974. </div>
  975. </div>
  976. <a id="a13b1fe0d8085ba8cf9845394c1433d89" name="a13b1fe0d8085ba8cf9845394c1433d89"></a>
  977. <h2 class="memtitle"><span class="permalink"><a href="#a13b1fe0d8085ba8cf9845394c1433d89">&#9670;&#160;</a></span>operator!=()</h2>
  978. <div class="memitem">
  979. <div class="memproto">
  980. <table class="mlabels">
  981. <tr>
  982. <td class="mlabels-left">
  983. <table class="memname">
  984. <tr>
  985. <td class="memname">JPH_INLINE bool Mat44::operator!= </td>
  986. <td>(</td>
  987. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM2</em></span></td><td>)</td>
  988. <td> const</td>
  989. </tr>
  990. </table>
  991. </td>
  992. <td class="mlabels-right">
  993. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  994. </tr>
  995. </table>
  996. </div><div class="memdoc">
  997. </div>
  998. </div>
  999. <a id="a608a5ec6255c02bfdfa11f4b9d66d438" name="a608a5ec6255c02bfdfa11f4b9d66d438"></a>
  1000. <h2 class="memtitle"><span class="permalink"><a href="#a608a5ec6255c02bfdfa11f4b9d66d438">&#9670;&#160;</a></span>operator()() <span class="overload">[1/2]</span></h2>
  1001. <div class="memitem">
  1002. <div class="memproto">
  1003. <table class="mlabels">
  1004. <tr>
  1005. <td class="mlabels-left">
  1006. <table class="memname">
  1007. <tr>
  1008. <td class="memname">JPH_INLINE float &amp; Mat44::operator() </td>
  1009. <td>(</td>
  1010. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inRow</em></span>, </td>
  1011. </tr>
  1012. <tr>
  1013. <td class="paramkey"></td>
  1014. <td></td>
  1015. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inColumn</em></span>&#160;)</td>
  1016. </tr>
  1017. </table>
  1018. </td>
  1019. <td class="mlabels-right">
  1020. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1021. </tr>
  1022. </table>
  1023. </div><div class="memdoc">
  1024. </div>
  1025. </div>
  1026. <a id="a7a74f3bb8a8ee63470c5b73e9fbfd5e9" name="a7a74f3bb8a8ee63470c5b73e9fbfd5e9"></a>
  1027. <h2 class="memtitle"><span class="permalink"><a href="#a7a74f3bb8a8ee63470c5b73e9fbfd5e9">&#9670;&#160;</a></span>operator()() <span class="overload">[2/2]</span></h2>
  1028. <div class="memitem">
  1029. <div class="memproto">
  1030. <table class="mlabels">
  1031. <tr>
  1032. <td class="mlabels-left">
  1033. <table class="memname">
  1034. <tr>
  1035. <td class="memname">JPH_INLINE float Mat44::operator() </td>
  1036. <td>(</td>
  1037. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inRow</em></span>, </td>
  1038. </tr>
  1039. <tr>
  1040. <td class="paramkey"></td>
  1041. <td></td>
  1042. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inColumn</em></span>&#160;) const</td>
  1043. </tr>
  1044. </table>
  1045. </td>
  1046. <td class="mlabels-right">
  1047. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1048. </tr>
  1049. </table>
  1050. </div><div class="memdoc">
  1051. <p>Get float component by element index. </p>
  1052. </div>
  1053. </div>
  1054. <a id="adde2d0df064c3457190cdc6fb0da5dc3" name="adde2d0df064c3457190cdc6fb0da5dc3"></a>
  1055. <h2 class="memtitle"><span class="permalink"><a href="#adde2d0df064c3457190cdc6fb0da5dc3">&#9670;&#160;</a></span>operator*() <span class="overload">[1/4]</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_mat44.html">Mat44</a> Mat44::operator* </td>
  1061. <td>(</td>
  1062. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1063. <td> const</td>
  1064. </tr>
  1065. </table>
  1066. </div><div class="memdoc">
  1067. <p>Multiply matrix with float. </p>
  1068. </div>
  1069. </div>
  1070. <a id="ae64ca2f2b40571def45845fecd505c64" name="ae64ca2f2b40571def45845fecd505c64"></a>
  1071. <h2 class="memtitle"><span class="permalink"><a href="#ae64ca2f2b40571def45845fecd505c64">&#9670;&#160;</a></span>operator*() <span class="overload">[2/4]</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_mat44.html">Mat44</a> Mat44::operator* </td>
  1077. <td>(</td>
  1078. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  1079. <td> const</td>
  1080. </tr>
  1081. </table>
  1082. </div><div class="memdoc">
  1083. <p>Multiply matrix by matrix. </p>
  1084. </div>
  1085. </div>
  1086. <a id="a8bbaea1aac790dd55a59b25a9ef7cd16" name="a8bbaea1aac790dd55a59b25a9ef7cd16"></a>
  1087. <h2 class="memtitle"><span class="permalink"><a href="#a8bbaea1aac790dd55a59b25a9ef7cd16">&#9670;&#160;</a></span>operator*() <span class="overload">[3/4]</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_vec3.html">Vec3</a> Mat44::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>inV</em></span></td><td>)</td>
  1095. <td> const</td>
  1096. </tr>
  1097. </table>
  1098. </div><div class="memdoc">
  1099. <p>Multiply vector by matrix. </p>
  1100. </div>
  1101. </div>
  1102. <a id="a087d4151cced62fdce757c1895d2d834" name="a087d4151cced62fdce757c1895d2d834"></a>
  1103. <h2 class="memtitle"><span class="permalink"><a href="#a087d4151cced62fdce757c1895d2d834">&#9670;&#160;</a></span>operator*() <span class="overload">[4/4]</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_vec4.html">Vec4</a> Mat44::operator* </td>
  1109. <td>(</td>
  1110. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1111. <td> const</td>
  1112. </tr>
  1113. </table>
  1114. </div><div class="memdoc">
  1115. </div>
  1116. </div>
  1117. <a id="a2a3d5b10d49ac1eed4eae855a0fd25d9" name="a2a3d5b10d49ac1eed4eae855a0fd25d9"></a>
  1118. <h2 class="memtitle"><span class="permalink"><a href="#a2a3d5b10d49ac1eed4eae855a0fd25d9">&#9670;&#160;</a></span>operator*=()</h2>
  1119. <div class="memitem">
  1120. <div class="memproto">
  1121. <table class="memname">
  1122. <tr>
  1123. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> &amp; Mat44::operator*= </td>
  1124. <td>(</td>
  1125. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1126. <td></td>
  1127. </tr>
  1128. </table>
  1129. </div><div class="memdoc">
  1130. <p>Multiply matrix with float. </p>
  1131. </div>
  1132. </div>
  1133. <a id="ac0c3181759450b3498b5dc53967f803d" name="ac0c3181759450b3498b5dc53967f803d"></a>
  1134. <h2 class="memtitle"><span class="permalink"><a href="#ac0c3181759450b3498b5dc53967f803d">&#9670;&#160;</a></span>operator+()</h2>
  1135. <div class="memitem">
  1136. <div class="memproto">
  1137. <table class="memname">
  1138. <tr>
  1139. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::operator+ </td>
  1140. <td>(</td>
  1141. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  1142. <td> const</td>
  1143. </tr>
  1144. </table>
  1145. </div><div class="memdoc">
  1146. <p>Per element addition of matrix. </p>
  1147. </div>
  1148. </div>
  1149. <a id="a60273e38c2e5071066f14905698ef994" name="a60273e38c2e5071066f14905698ef994"></a>
  1150. <h2 class="memtitle"><span class="permalink"><a href="#a60273e38c2e5071066f14905698ef994">&#9670;&#160;</a></span>operator+=()</h2>
  1151. <div class="memitem">
  1152. <div class="memproto">
  1153. <table class="memname">
  1154. <tr>
  1155. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> &amp; Mat44::operator+= </td>
  1156. <td>(</td>
  1157. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  1158. <td></td>
  1159. </tr>
  1160. </table>
  1161. </div><div class="memdoc">
  1162. <p>Per element addition of matrix. </p>
  1163. </div>
  1164. </div>
  1165. <a id="a22b266ee0c8cb215e96edaebc50d2cbf" name="a22b266ee0c8cb215e96edaebc50d2cbf"></a>
  1166. <h2 class="memtitle"><span class="permalink"><a href="#a22b266ee0c8cb215e96edaebc50d2cbf">&#9670;&#160;</a></span>operator-() <span class="overload">[1/2]</span></h2>
  1167. <div class="memitem">
  1168. <div class="memproto">
  1169. <table class="memname">
  1170. <tr>
  1171. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::operator- </td>
  1172. <td>(</td>
  1173. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1174. <td> const</td>
  1175. </tr>
  1176. </table>
  1177. </div><div class="memdoc">
  1178. <p>Negate. </p>
  1179. </div>
  1180. </div>
  1181. <a id="acb281c6516de9bfd045aa029f95ba0d0" name="acb281c6516de9bfd045aa029f95ba0d0"></a>
  1182. <h2 class="memtitle"><span class="permalink"><a href="#acb281c6516de9bfd045aa029f95ba0d0">&#9670;&#160;</a></span>operator-() <span class="overload">[2/2]</span></h2>
  1183. <div class="memitem">
  1184. <div class="memproto">
  1185. <table class="memname">
  1186. <tr>
  1187. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::operator- </td>
  1188. <td>(</td>
  1189. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  1190. <td> const</td>
  1191. </tr>
  1192. </table>
  1193. </div><div class="memdoc">
  1194. <p>Per element subtraction of matrix. </p>
  1195. </div>
  1196. </div>
  1197. <a id="a84bfaec450f946db0a29c1a6036f4043" name="a84bfaec450f946db0a29c1a6036f4043"></a>
  1198. <h2 class="memtitle"><span class="permalink"><a href="#a84bfaec450f946db0a29c1a6036f4043">&#9670;&#160;</a></span>operator=()</h2>
  1199. <div class="memitem">
  1200. <div class="memproto">
  1201. <table class="mlabels">
  1202. <tr>
  1203. <td class="mlabels-left">
  1204. <table class="memname">
  1205. <tr>
  1206. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> &amp; Mat44::operator= </td>
  1207. <td>(</td>
  1208. <td class="paramtype">const <a class="el" href="class_mat44.html">Mat44</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inM2</em></span></td><td>)</td>
  1209. <td></td>
  1210. </tr>
  1211. </table>
  1212. </td>
  1213. <td class="mlabels-right">
  1214. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  1215. </tr>
  1216. </table>
  1217. </div><div class="memdoc">
  1218. </div>
  1219. </div>
  1220. <a id="a3be30e0ae2ded68ebb5ceea9afbfe5c1" name="a3be30e0ae2ded68ebb5ceea9afbfe5c1"></a>
  1221. <h2 class="memtitle"><span class="permalink"><a href="#a3be30e0ae2ded68ebb5ceea9afbfe5c1">&#9670;&#160;</a></span>operator==()</h2>
  1222. <div class="memitem">
  1223. <div class="memproto">
  1224. <table class="memname">
  1225. <tr>
  1226. <td class="memname">bool Mat44::operator== </td>
  1227. <td>(</td>
  1228. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM2</em></span></td><td>)</td>
  1229. <td> const</td>
  1230. </tr>
  1231. </table>
  1232. </div><div class="memdoc">
  1233. <p>Comparison. </p>
  1234. </div>
  1235. </div>
  1236. <a id="a6503ccd1384b6681d191c327961fbb6d" name="a6503ccd1384b6681d191c327961fbb6d"></a>
  1237. <h2 class="memtitle"><span class="permalink"><a href="#a6503ccd1384b6681d191c327961fbb6d">&#9670;&#160;</a></span>PostScaled()</h2>
  1238. <div class="memitem">
  1239. <div class="memproto">
  1240. <table class="memname">
  1241. <tr>
  1242. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::PostScaled </td>
  1243. <td>(</td>
  1244. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inScale</em></span></td><td>)</td>
  1245. <td> const</td>
  1246. </tr>
  1247. </table>
  1248. </div><div class="memdoc">
  1249. <p>Scale a matrix: result = Mat44::sScale(inScale) * this. </p>
  1250. </div>
  1251. </div>
  1252. <a id="a16b90363d2e120bd570c4200e29f5ba6" name="a16b90363d2e120bd570c4200e29f5ba6"></a>
  1253. <h2 class="memtitle"><span class="permalink"><a href="#a16b90363d2e120bd570c4200e29f5ba6">&#9670;&#160;</a></span>PostTranslated()</h2>
  1254. <div class="memitem">
  1255. <div class="memproto">
  1256. <table class="memname">
  1257. <tr>
  1258. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::PostTranslated </td>
  1259. <td>(</td>
  1260. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inTranslation</em></span></td><td>)</td>
  1261. <td> const</td>
  1262. </tr>
  1263. </table>
  1264. </div><div class="memdoc">
  1265. <p>Post multiply by translation matrix: result = Mat44::sTranslation(inTranslation) * this (i.e. add inTranslation to the 4-th column) </p>
  1266. </div>
  1267. </div>
  1268. <a id="af9c9948eced621a54424f05c397824dd" name="af9c9948eced621a54424f05c397824dd"></a>
  1269. <h2 class="memtitle"><span class="permalink"><a href="#af9c9948eced621a54424f05c397824dd">&#9670;&#160;</a></span>PreScaled()</h2>
  1270. <div class="memitem">
  1271. <div class="memproto">
  1272. <table class="memname">
  1273. <tr>
  1274. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::PreScaled </td>
  1275. <td>(</td>
  1276. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inScale</em></span></td><td>)</td>
  1277. <td> const</td>
  1278. </tr>
  1279. </table>
  1280. </div><div class="memdoc">
  1281. <p>Scale a matrix: result = this * Mat44::sScale(inScale) </p>
  1282. </div>
  1283. </div>
  1284. <a id="a16f19b423139db52503bb8d6526d947f" name="a16f19b423139db52503bb8d6526d947f"></a>
  1285. <h2 class="memtitle"><span class="permalink"><a href="#a16f19b423139db52503bb8d6526d947f">&#9670;&#160;</a></span>PreTranslated()</h2>
  1286. <div class="memitem">
  1287. <div class="memproto">
  1288. <table class="memname">
  1289. <tr>
  1290. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::PreTranslated </td>
  1291. <td>(</td>
  1292. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inTranslation</em></span></td><td>)</td>
  1293. <td> const</td>
  1294. </tr>
  1295. </table>
  1296. </div><div class="memdoc">
  1297. <p>Pre multiply by translation matrix: result = this * Mat44::sTranslation(inTranslation) </p>
  1298. </div>
  1299. </div>
  1300. <a id="a23d5a6de1a0058d380a0bf42d263c659" name="a23d5a6de1a0058d380a0bf42d263c659"></a>
  1301. <h2 class="memtitle"><span class="permalink"><a href="#a23d5a6de1a0058d380a0bf42d263c659">&#9670;&#160;</a></span>sCrossProduct()</h2>
  1302. <div class="memitem">
  1303. <div class="memproto">
  1304. <table class="mlabels">
  1305. <tr>
  1306. <td class="mlabels-left">
  1307. <table class="memname">
  1308. <tr>
  1309. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sCrossProduct </td>
  1310. <td>(</td>
  1311. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1312. <td></td>
  1313. </tr>
  1314. </table>
  1315. </td>
  1316. <td class="mlabels-right">
  1317. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1318. </tr>
  1319. </table>
  1320. </div><div class="memdoc">
  1321. <p>Get matrix that represents a cross product \(A \times B = \text{sCrossProduct}(A) \: B\). </p>
  1322. </div>
  1323. </div>
  1324. <a id="a04aad46839683a6d3d82a400c3bbe576" name="a04aad46839683a6d3d82a400c3bbe576"></a>
  1325. <h2 class="memtitle"><span class="permalink"><a href="#a04aad46839683a6d3d82a400c3bbe576">&#9670;&#160;</a></span>SetAxisX()</h2>
  1326. <div class="memitem">
  1327. <div class="memproto">
  1328. <table class="mlabels">
  1329. <tr>
  1330. <td class="mlabels-left">
  1331. <table class="memname">
  1332. <tr>
  1333. <td class="memname">JPH_INLINE void Mat44::SetAxisX </td>
  1334. <td>(</td>
  1335. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1336. <td></td>
  1337. </tr>
  1338. </table>
  1339. </td>
  1340. <td class="mlabels-right">
  1341. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1342. </tr>
  1343. </table>
  1344. </div><div class="memdoc">
  1345. </div>
  1346. </div>
  1347. <a id="ada218e0e59422cb1b0b38a534b7379b8" name="ada218e0e59422cb1b0b38a534b7379b8"></a>
  1348. <h2 class="memtitle"><span class="permalink"><a href="#ada218e0e59422cb1b0b38a534b7379b8">&#9670;&#160;</a></span>SetAxisY()</h2>
  1349. <div class="memitem">
  1350. <div class="memproto">
  1351. <table class="mlabels">
  1352. <tr>
  1353. <td class="mlabels-left">
  1354. <table class="memname">
  1355. <tr>
  1356. <td class="memname">JPH_INLINE void Mat44::SetAxisY </td>
  1357. <td>(</td>
  1358. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1359. <td></td>
  1360. </tr>
  1361. </table>
  1362. </td>
  1363. <td class="mlabels-right">
  1364. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1365. </tr>
  1366. </table>
  1367. </div><div class="memdoc">
  1368. </div>
  1369. </div>
  1370. <a id="a469e83f0fb0c2975b4506c682721c3e3" name="a469e83f0fb0c2975b4506c682721c3e3"></a>
  1371. <h2 class="memtitle"><span class="permalink"><a href="#a469e83f0fb0c2975b4506c682721c3e3">&#9670;&#160;</a></span>SetAxisZ()</h2>
  1372. <div class="memitem">
  1373. <div class="memproto">
  1374. <table class="mlabels">
  1375. <tr>
  1376. <td class="mlabels-left">
  1377. <table class="memname">
  1378. <tr>
  1379. <td class="memname">JPH_INLINE void Mat44::SetAxisZ </td>
  1380. <td>(</td>
  1381. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1382. <td></td>
  1383. </tr>
  1384. </table>
  1385. </td>
  1386. <td class="mlabels-right">
  1387. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1388. </tr>
  1389. </table>
  1390. </div><div class="memdoc">
  1391. </div>
  1392. </div>
  1393. <a id="a1659c59725a85b2bb991e333381c87fe" name="a1659c59725a85b2bb991e333381c87fe"></a>
  1394. <h2 class="memtitle"><span class="permalink"><a href="#a1659c59725a85b2bb991e333381c87fe">&#9670;&#160;</a></span>SetColumn3()</h2>
  1395. <div class="memitem">
  1396. <div class="memproto">
  1397. <table class="mlabels">
  1398. <tr>
  1399. <td class="mlabels-left">
  1400. <table class="memname">
  1401. <tr>
  1402. <td class="memname">JPH_INLINE void Mat44::SetColumn3 </td>
  1403. <td>(</td>
  1404. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inCol</em></span>, </td>
  1405. </tr>
  1406. <tr>
  1407. <td class="paramkey"></td>
  1408. <td></td>
  1409. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span>&#160;)</td>
  1410. </tr>
  1411. </table>
  1412. </td>
  1413. <td class="mlabels-right">
  1414. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1415. </tr>
  1416. </table>
  1417. </div><div class="memdoc">
  1418. </div>
  1419. </div>
  1420. <a id="ace29aeaafa5bbff8a159105fee78e2d2" name="ace29aeaafa5bbff8a159105fee78e2d2"></a>
  1421. <h2 class="memtitle"><span class="permalink"><a href="#ace29aeaafa5bbff8a159105fee78e2d2">&#9670;&#160;</a></span>SetColumn4()</h2>
  1422. <div class="memitem">
  1423. <div class="memproto">
  1424. <table class="mlabels">
  1425. <tr>
  1426. <td class="mlabels-left">
  1427. <table class="memname">
  1428. <tr>
  1429. <td class="memname">JPH_INLINE void Mat44::SetColumn4 </td>
  1430. <td>(</td>
  1431. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inCol</em></span>, </td>
  1432. </tr>
  1433. <tr>
  1434. <td class="paramkey"></td>
  1435. <td></td>
  1436. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span>&#160;)</td>
  1437. </tr>
  1438. </table>
  1439. </td>
  1440. <td class="mlabels-right">
  1441. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1442. </tr>
  1443. </table>
  1444. </div><div class="memdoc">
  1445. </div>
  1446. </div>
  1447. <a id="ab385ba1f663f9de2137d816c0fc4fb3f" name="ab385ba1f663f9de2137d816c0fc4fb3f"></a>
  1448. <h2 class="memtitle"><span class="permalink"><a href="#ab385ba1f663f9de2137d816c0fc4fb3f">&#9670;&#160;</a></span>SetDiagonal3()</h2>
  1449. <div class="memitem">
  1450. <div class="memproto">
  1451. <table class="mlabels">
  1452. <tr>
  1453. <td class="mlabels-left">
  1454. <table class="memname">
  1455. <tr>
  1456. <td class="memname">JPH_INLINE void Mat44::SetDiagonal3 </td>
  1457. <td>(</td>
  1458. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1459. <td></td>
  1460. </tr>
  1461. </table>
  1462. </td>
  1463. <td class="mlabels-right">
  1464. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1465. </tr>
  1466. </table>
  1467. </div><div class="memdoc">
  1468. </div>
  1469. </div>
  1470. <a id="a335f4cec86c172f07bd0667909a54a7e" name="a335f4cec86c172f07bd0667909a54a7e"></a>
  1471. <h2 class="memtitle"><span class="permalink"><a href="#a335f4cec86c172f07bd0667909a54a7e">&#9670;&#160;</a></span>SetDiagonal4()</h2>
  1472. <div class="memitem">
  1473. <div class="memproto">
  1474. <table class="mlabels">
  1475. <tr>
  1476. <td class="mlabels-left">
  1477. <table class="memname">
  1478. <tr>
  1479. <td class="memname">JPH_INLINE void Mat44::SetDiagonal4 </td>
  1480. <td>(</td>
  1481. <td class="paramtype"><a class="el" href="_math_types_8h.html#a2f6a6bbc069039fb4bc5813de8e77aa1">Vec4Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1482. <td></td>
  1483. </tr>
  1484. </table>
  1485. </td>
  1486. <td class="mlabels-right">
  1487. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1488. </tr>
  1489. </table>
  1490. </div><div class="memdoc">
  1491. </div>
  1492. </div>
  1493. <a id="a814c04077820ea83f444ccc5ae48299f" name="a814c04077820ea83f444ccc5ae48299f"></a>
  1494. <h2 class="memtitle"><span class="permalink"><a href="#a814c04077820ea83f444ccc5ae48299f">&#9670;&#160;</a></span>SetInversed3x3()</h2>
  1495. <div class="memitem">
  1496. <div class="memproto">
  1497. <table class="memname">
  1498. <tr>
  1499. <td class="memname">bool Mat44::SetInversed3x3 </td>
  1500. <td>(</td>
  1501. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span></td><td>)</td>
  1502. <td></td>
  1503. </tr>
  1504. </table>
  1505. </div><div class="memdoc">
  1506. <p>*this = inM.Inversed3x3(), returns false if the matrix is singular in which case *this is unchanged </p>
  1507. </div>
  1508. </div>
  1509. <a id="abd5dc78238403195cbd0cde87f40af49" name="abd5dc78238403195cbd0cde87f40af49"></a>
  1510. <h2 class="memtitle"><span class="permalink"><a href="#abd5dc78238403195cbd0cde87f40af49">&#9670;&#160;</a></span>SetRotation()</h2>
  1511. <div class="memitem">
  1512. <div class="memproto">
  1513. <table class="memname">
  1514. <tr>
  1515. <td class="memname">void Mat44::SetRotation </td>
  1516. <td>(</td>
  1517. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inRotation</em></span></td><td>)</td>
  1518. <td></td>
  1519. </tr>
  1520. </table>
  1521. </div><div class="memdoc">
  1522. <p>Updates the rotation part of this matrix (the first 3 columns) </p>
  1523. </div>
  1524. </div>
  1525. <a id="ae89e485f03d9a5dbaf317c057f4eac30" name="ae89e485f03d9a5dbaf317c057f4eac30"></a>
  1526. <h2 class="memtitle"><span class="permalink"><a href="#ae89e485f03d9a5dbaf317c057f4eac30">&#9670;&#160;</a></span>SetTranslation()</h2>
  1527. <div class="memitem">
  1528. <div class="memproto">
  1529. <table class="mlabels">
  1530. <tr>
  1531. <td class="mlabels-left">
  1532. <table class="memname">
  1533. <tr>
  1534. <td class="memname">JPH_INLINE void Mat44::SetTranslation </td>
  1535. <td>(</td>
  1536. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1537. <td></td>
  1538. </tr>
  1539. </table>
  1540. </td>
  1541. <td class="mlabels-right">
  1542. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  1543. </tr>
  1544. </table>
  1545. </div><div class="memdoc">
  1546. </div>
  1547. </div>
  1548. <a id="a1b8c82590f5034e8c7f35157fdfd944f" name="a1b8c82590f5034e8c7f35157fdfd944f"></a>
  1549. <h2 class="memtitle"><span class="permalink"><a href="#a1b8c82590f5034e8c7f35157fdfd944f">&#9670;&#160;</a></span>sIdentity()</h2>
  1550. <div class="memitem">
  1551. <div class="memproto">
  1552. <table class="mlabels">
  1553. <tr>
  1554. <td class="mlabels-left">
  1555. <table class="memname">
  1556. <tr>
  1557. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sIdentity </td>
  1558. <td>(</td>
  1559. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1560. <td></td>
  1561. </tr>
  1562. </table>
  1563. </td>
  1564. <td class="mlabels-right">
  1565. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1566. </tr>
  1567. </table>
  1568. </div><div class="memdoc">
  1569. <p>Identity matrix. </p>
  1570. </div>
  1571. </div>
  1572. <a id="ac8be820a7eeb44bf570abb8dc01f4c59" name="ac8be820a7eeb44bf570abb8dc01f4c59"></a>
  1573. <h2 class="memtitle"><span class="permalink"><a href="#ac8be820a7eeb44bf570abb8dc01f4c59">&#9670;&#160;</a></span>sInverseRotationTranslation()</h2>
  1574. <div class="memitem">
  1575. <div class="memproto">
  1576. <table class="mlabels">
  1577. <tr>
  1578. <td class="mlabels-left">
  1579. <table class="memname">
  1580. <tr>
  1581. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sInverseRotationTranslation </td>
  1582. <td>(</td>
  1583. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inR</em></span>, </td>
  1584. </tr>
  1585. <tr>
  1586. <td class="paramkey"></td>
  1587. <td></td>
  1588. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inT</em></span>&#160;)</td>
  1589. </tr>
  1590. </table>
  1591. </td>
  1592. <td class="mlabels-right">
  1593. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1594. </tr>
  1595. </table>
  1596. </div><div class="memdoc">
  1597. <p>Get inverse matrix of sRotationTranslation. </p>
  1598. </div>
  1599. </div>
  1600. <a id="a3e2a056f901661fd715528c325df455d" name="a3e2a056f901661fd715528c325df455d"></a>
  1601. <h2 class="memtitle"><span class="permalink"><a href="#a3e2a056f901661fd715528c325df455d">&#9670;&#160;</a></span>sLoadFloat4x4()</h2>
  1602. <div class="memitem">
  1603. <div class="memproto">
  1604. <table class="mlabels">
  1605. <tr>
  1606. <td class="mlabels-left">
  1607. <table class="memname">
  1608. <tr>
  1609. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sLoadFloat4x4 </td>
  1610. <td>(</td>
  1611. <td class="paramtype">const <a class="el" href="class_float4.html">Float4</a> *</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1612. <td></td>
  1613. </tr>
  1614. </table>
  1615. </td>
  1616. <td class="mlabels-right">
  1617. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1618. </tr>
  1619. </table>
  1620. </div><div class="memdoc">
  1621. <p>Load 16 floats from memory. </p>
  1622. </div>
  1623. </div>
  1624. <a id="a8bcbeea9029c5251ff4ea9bd4d518f4c" name="a8bcbeea9029c5251ff4ea9bd4d518f4c"></a>
  1625. <h2 class="memtitle"><span class="permalink"><a href="#a8bcbeea9029c5251ff4ea9bd4d518f4c">&#9670;&#160;</a></span>sLoadFloat4x4Aligned()</h2>
  1626. <div class="memitem">
  1627. <div class="memproto">
  1628. <table class="mlabels">
  1629. <tr>
  1630. <td class="mlabels-left">
  1631. <table class="memname">
  1632. <tr>
  1633. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sLoadFloat4x4Aligned </td>
  1634. <td>(</td>
  1635. <td class="paramtype">const <a class="el" href="class_float4.html">Float4</a> *</td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  1636. <td></td>
  1637. </tr>
  1638. </table>
  1639. </td>
  1640. <td class="mlabels-right">
  1641. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1642. </tr>
  1643. </table>
  1644. </div><div class="memdoc">
  1645. <p>Load 16 floats from memory, 16 bytes aligned. </p>
  1646. </div>
  1647. </div>
  1648. <a id="a48f32e1e7f27b3eeaa8913d53b2c808f" name="a48f32e1e7f27b3eeaa8913d53b2c808f"></a>
  1649. <h2 class="memtitle"><span class="permalink"><a href="#a48f32e1e7f27b3eeaa8913d53b2c808f">&#9670;&#160;</a></span>sLookAt()</h2>
  1650. <div class="memitem">
  1651. <div class="memproto">
  1652. <table class="mlabels">
  1653. <tr>
  1654. <td class="mlabels-left">
  1655. <table class="memname">
  1656. <tr>
  1657. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sLookAt </td>
  1658. <td>(</td>
  1659. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inPos</em></span>, </td>
  1660. </tr>
  1661. <tr>
  1662. <td class="paramkey"></td>
  1663. <td></td>
  1664. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inTarget</em></span>, </td>
  1665. </tr>
  1666. <tr>
  1667. <td class="paramkey"></td>
  1668. <td></td>
  1669. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inUp</em></span>&#160;)</td>
  1670. </tr>
  1671. </table>
  1672. </td>
  1673. <td class="mlabels-right">
  1674. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1675. </tr>
  1676. </table>
  1677. </div><div class="memdoc">
  1678. <p>Returns a look at matrix that transforms from world space to view space </p><dl class="params"><dt>Parameters</dt><dd>
  1679. <table class="params">
  1680. <tr><td class="paramname">inPos</td><td>Position of the camera </td></tr>
  1681. <tr><td class="paramname">inTarget</td><td>Target of the camera </td></tr>
  1682. <tr><td class="paramname">inUp</td><td>Up vector </td></tr>
  1683. </table>
  1684. </dd>
  1685. </dl>
  1686. </div>
  1687. </div>
  1688. <a id="a5c6898814660114482bbfc4908c3ad37" name="a5c6898814660114482bbfc4908c3ad37"></a>
  1689. <h2 class="memtitle"><span class="permalink"><a href="#a5c6898814660114482bbfc4908c3ad37">&#9670;&#160;</a></span>sNaN()</h2>
  1690. <div class="memitem">
  1691. <div class="memproto">
  1692. <table class="mlabels">
  1693. <tr>
  1694. <td class="mlabels-left">
  1695. <table class="memname">
  1696. <tr>
  1697. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sNaN </td>
  1698. <td>(</td>
  1699. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  1700. <td></td>
  1701. </tr>
  1702. </table>
  1703. </td>
  1704. <td class="mlabels-right">
  1705. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1706. </tr>
  1707. </table>
  1708. </div><div class="memdoc">
  1709. <p><a class="el" href="class_matrix.html" title="Templatized matrix class.">Matrix</a> filled with NaN's. </p>
  1710. </div>
  1711. </div>
  1712. <a id="a44ee960223f2270ce7ea2840418e3c72" name="a44ee960223f2270ce7ea2840418e3c72"></a>
  1713. <h2 class="memtitle"><span class="permalink"><a href="#a44ee960223f2270ce7ea2840418e3c72">&#9670;&#160;</a></span>sOuterProduct()</h2>
  1714. <div class="memitem">
  1715. <div class="memproto">
  1716. <table class="mlabels">
  1717. <tr>
  1718. <td class="mlabels-left">
  1719. <table class="memname">
  1720. <tr>
  1721. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sOuterProduct </td>
  1722. <td>(</td>
  1723. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV1</em></span>, </td>
  1724. </tr>
  1725. <tr>
  1726. <td class="paramkey"></td>
  1727. <td></td>
  1728. <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>&#160;)</td>
  1729. </tr>
  1730. </table>
  1731. </td>
  1732. <td class="mlabels-right">
  1733. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1734. </tr>
  1735. </table>
  1736. </div><div class="memdoc">
  1737. <p>Get outer product of inV and inV2 (equivalent to \(inV1 \otimes inV2\)) </p>
  1738. </div>
  1739. </div>
  1740. <a id="aef3d368ff37b2b927b1f74573371a06e" name="aef3d368ff37b2b927b1f74573371a06e"></a>
  1741. <h2 class="memtitle"><span class="permalink"><a href="#aef3d368ff37b2b927b1f74573371a06e">&#9670;&#160;</a></span>sPerspective()</h2>
  1742. <div class="memitem">
  1743. <div class="memproto">
  1744. <table class="mlabels">
  1745. <tr>
  1746. <td class="mlabels-left">
  1747. <table class="memname">
  1748. <tr>
  1749. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sPerspective </td>
  1750. <td>(</td>
  1751. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inFovY</em></span>, </td>
  1752. </tr>
  1753. <tr>
  1754. <td class="paramkey"></td>
  1755. <td></td>
  1756. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inAspect</em></span>, </td>
  1757. </tr>
  1758. <tr>
  1759. <td class="paramkey"></td>
  1760. <td></td>
  1761. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inNear</em></span>, </td>
  1762. </tr>
  1763. <tr>
  1764. <td class="paramkey"></td>
  1765. <td></td>
  1766. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inFar</em></span>&#160;)</td>
  1767. </tr>
  1768. </table>
  1769. </td>
  1770. <td class="mlabels-right">
  1771. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1772. </tr>
  1773. </table>
  1774. </div><div class="memdoc">
  1775. <p>Returns a right-handed perspective projection matrix. </p>
  1776. </div>
  1777. </div>
  1778. <a id="adca3adc84118200afa5f4203164d241f" name="adca3adc84118200afa5f4203164d241f"></a>
  1779. <h2 class="memtitle"><span class="permalink"><a href="#adca3adc84118200afa5f4203164d241f">&#9670;&#160;</a></span>sQuatLeftMultiply()</h2>
  1780. <div class="memitem">
  1781. <div class="memproto">
  1782. <table class="mlabels">
  1783. <tr>
  1784. <td class="mlabels-left">
  1785. <table class="memname">
  1786. <tr>
  1787. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sQuatLeftMultiply </td>
  1788. <td>(</td>
  1789. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inQ</em></span></td><td>)</td>
  1790. <td></td>
  1791. </tr>
  1792. </table>
  1793. </td>
  1794. <td class="mlabels-right">
  1795. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1796. </tr>
  1797. </table>
  1798. </div><div class="memdoc">
  1799. <p>Returns matrix ML so that \(ML(q) \: p = q \: p\) (where p and q are quaternions) </p>
  1800. </div>
  1801. </div>
  1802. <a id="a2b688da0262b9096bfac9ddfa2c27e52" name="a2b688da0262b9096bfac9ddfa2c27e52"></a>
  1803. <h2 class="memtitle"><span class="permalink"><a href="#a2b688da0262b9096bfac9ddfa2c27e52">&#9670;&#160;</a></span>sQuatRightMultiply()</h2>
  1804. <div class="memitem">
  1805. <div class="memproto">
  1806. <table class="mlabels">
  1807. <tr>
  1808. <td class="mlabels-left">
  1809. <table class="memname">
  1810. <tr>
  1811. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sQuatRightMultiply </td>
  1812. <td>(</td>
  1813. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inQ</em></span></td><td>)</td>
  1814. <td></td>
  1815. </tr>
  1816. </table>
  1817. </td>
  1818. <td class="mlabels-right">
  1819. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1820. </tr>
  1821. </table>
  1822. </div><div class="memdoc">
  1823. <p>Returns matrix MR so that \(MR(q) \: p = p \: q\) (where p and q are quaternions) </p>
  1824. </div>
  1825. </div>
  1826. <a id="a57c9e6198fcf68a50cb33609fac0980a" name="a57c9e6198fcf68a50cb33609fac0980a"></a>
  1827. <h2 class="memtitle"><span class="permalink"><a href="#a57c9e6198fcf68a50cb33609fac0980a">&#9670;&#160;</a></span>sRotation() <span class="overload">[1/2]</span></h2>
  1828. <div class="memitem">
  1829. <div class="memproto">
  1830. <table class="mlabels">
  1831. <tr>
  1832. <td class="mlabels-left">
  1833. <table class="memname">
  1834. <tr>
  1835. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sRotation </td>
  1836. <td>(</td>
  1837. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inQuat</em></span></td><td>)</td>
  1838. <td></td>
  1839. </tr>
  1840. </table>
  1841. </td>
  1842. <td class="mlabels-right">
  1843. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1844. </tr>
  1845. </table>
  1846. </div><div class="memdoc">
  1847. <p>Rotate from quaternion. </p>
  1848. </div>
  1849. </div>
  1850. <a id="ac3109f2d950061c0b4de57e76a132634" name="ac3109f2d950061c0b4de57e76a132634"></a>
  1851. <h2 class="memtitle"><span class="permalink"><a href="#ac3109f2d950061c0b4de57e76a132634">&#9670;&#160;</a></span>sRotation() <span class="overload">[2/2]</span></h2>
  1852. <div class="memitem">
  1853. <div class="memproto">
  1854. <table class="mlabels">
  1855. <tr>
  1856. <td class="mlabels-left">
  1857. <table class="memname">
  1858. <tr>
  1859. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sRotation </td>
  1860. <td>(</td>
  1861. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inAxis</em></span>, </td>
  1862. </tr>
  1863. <tr>
  1864. <td class="paramkey"></td>
  1865. <td></td>
  1866. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inAngle</em></span>&#160;)</td>
  1867. </tr>
  1868. </table>
  1869. </td>
  1870. <td class="mlabels-right">
  1871. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1872. </tr>
  1873. </table>
  1874. </div><div class="memdoc">
  1875. <p>Rotate around arbitrary axis. </p>
  1876. </div>
  1877. </div>
  1878. <a id="aba5427f45393b40263d52ec614cfa985" name="aba5427f45393b40263d52ec614cfa985"></a>
  1879. <h2 class="memtitle"><span class="permalink"><a href="#aba5427f45393b40263d52ec614cfa985">&#9670;&#160;</a></span>sRotationTranslation()</h2>
  1880. <div class="memitem">
  1881. <div class="memproto">
  1882. <table class="mlabels">
  1883. <tr>
  1884. <td class="mlabels-left">
  1885. <table class="memname">
  1886. <tr>
  1887. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sRotationTranslation </td>
  1888. <td>(</td>
  1889. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inR</em></span>, </td>
  1890. </tr>
  1891. <tr>
  1892. <td class="paramkey"></td>
  1893. <td></td>
  1894. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inT</em></span>&#160;)</td>
  1895. </tr>
  1896. </table>
  1897. </td>
  1898. <td class="mlabels-right">
  1899. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1900. </tr>
  1901. </table>
  1902. </div><div class="memdoc">
  1903. <p>Get matrix that rotates and translates. </p>
  1904. </div>
  1905. </div>
  1906. <a id="af243335b6d6acec2cf71d4cdc79bdff4" name="af243335b6d6acec2cf71d4cdc79bdff4"></a>
  1907. <h2 class="memtitle"><span class="permalink"><a href="#af243335b6d6acec2cf71d4cdc79bdff4">&#9670;&#160;</a></span>sRotationX()</h2>
  1908. <div class="memitem">
  1909. <div class="memproto">
  1910. <table class="mlabels">
  1911. <tr>
  1912. <td class="mlabels-left">
  1913. <table class="memname">
  1914. <tr>
  1915. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sRotationX </td>
  1916. <td>(</td>
  1917. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inX</em></span></td><td>)</td>
  1918. <td></td>
  1919. </tr>
  1920. </table>
  1921. </td>
  1922. <td class="mlabels-right">
  1923. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1924. </tr>
  1925. </table>
  1926. </div><div class="memdoc">
  1927. <p>Rotate around X, Y or Z axis (angle in radians) </p>
  1928. </div>
  1929. </div>
  1930. <a id="afc881fca3e2d653815f0e7742ad4dce8" name="afc881fca3e2d653815f0e7742ad4dce8"></a>
  1931. <h2 class="memtitle"><span class="permalink"><a href="#afc881fca3e2d653815f0e7742ad4dce8">&#9670;&#160;</a></span>sRotationY()</h2>
  1932. <div class="memitem">
  1933. <div class="memproto">
  1934. <table class="mlabels">
  1935. <tr>
  1936. <td class="mlabels-left">
  1937. <table class="memname">
  1938. <tr>
  1939. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sRotationY </td>
  1940. <td>(</td>
  1941. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inY</em></span></td><td>)</td>
  1942. <td></td>
  1943. </tr>
  1944. </table>
  1945. </td>
  1946. <td class="mlabels-right">
  1947. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1948. </tr>
  1949. </table>
  1950. </div><div class="memdoc">
  1951. </div>
  1952. </div>
  1953. <a id="a3d393e34a43a22b0fbd2aba60f364434" name="a3d393e34a43a22b0fbd2aba60f364434"></a>
  1954. <h2 class="memtitle"><span class="permalink"><a href="#a3d393e34a43a22b0fbd2aba60f364434">&#9670;&#160;</a></span>sRotationZ()</h2>
  1955. <div class="memitem">
  1956. <div class="memproto">
  1957. <table class="mlabels">
  1958. <tr>
  1959. <td class="mlabels-left">
  1960. <table class="memname">
  1961. <tr>
  1962. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sRotationZ </td>
  1963. <td>(</td>
  1964. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inZ</em></span></td><td>)</td>
  1965. <td></td>
  1966. </tr>
  1967. </table>
  1968. </td>
  1969. <td class="mlabels-right">
  1970. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1971. </tr>
  1972. </table>
  1973. </div><div class="memdoc">
  1974. </div>
  1975. </div>
  1976. <a id="a858ecd5c9c124039f5c7adab5bcf5041" name="a858ecd5c9c124039f5c7adab5bcf5041"></a>
  1977. <h2 class="memtitle"><span class="permalink"><a href="#a858ecd5c9c124039f5c7adab5bcf5041">&#9670;&#160;</a></span>sScale() <span class="overload">[1/2]</span></h2>
  1978. <div class="memitem">
  1979. <div class="memproto">
  1980. <table class="mlabels">
  1981. <tr>
  1982. <td class="mlabels-left">
  1983. <table class="memname">
  1984. <tr>
  1985. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sScale </td>
  1986. <td>(</td>
  1987. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inScale</em></span></td><td>)</td>
  1988. <td></td>
  1989. </tr>
  1990. </table>
  1991. </td>
  1992. <td class="mlabels-right">
  1993. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  1994. </tr>
  1995. </table>
  1996. </div><div class="memdoc">
  1997. <p>Get matrix that scales uniformly. </p>
  1998. </div>
  1999. </div>
  2000. <a id="a6059fd2921e0dc33405fe05a2d3aaa76" name="a6059fd2921e0dc33405fe05a2d3aaa76"></a>
  2001. <h2 class="memtitle"><span class="permalink"><a href="#a6059fd2921e0dc33405fe05a2d3aaa76">&#9670;&#160;</a></span>sScale() <span class="overload">[2/2]</span></h2>
  2002. <div class="memitem">
  2003. <div class="memproto">
  2004. <table class="mlabels">
  2005. <tr>
  2006. <td class="mlabels-left">
  2007. <table class="memname">
  2008. <tr>
  2009. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sScale </td>
  2010. <td>(</td>
  2011. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  2012. <td></td>
  2013. </tr>
  2014. </table>
  2015. </td>
  2016. <td class="mlabels-right">
  2017. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  2018. </tr>
  2019. </table>
  2020. </div><div class="memdoc">
  2021. <p>Get matrix that scales (produces a matrix with (inV, 1) on its diagonal) </p>
  2022. </div>
  2023. </div>
  2024. <a id="a1f51050b35215131c7da9a7de78a3e1e" name="a1f51050b35215131c7da9a7de78a3e1e"></a>
  2025. <h2 class="memtitle"><span class="permalink"><a href="#a1f51050b35215131c7da9a7de78a3e1e">&#9670;&#160;</a></span>StoreFloat4x4()</h2>
  2026. <div class="memitem">
  2027. <div class="memproto">
  2028. <table class="memname">
  2029. <tr>
  2030. <td class="memname">void Mat44::StoreFloat4x4 </td>
  2031. <td>(</td>
  2032. <td class="paramtype"><a class="el" href="class_float4.html">Float4</a> *</td> <td class="paramname"><span class="paramname"><em>outV</em></span></td><td>)</td>
  2033. <td> const</td>
  2034. </tr>
  2035. </table>
  2036. </div><div class="memdoc">
  2037. <p>Store matrix to memory. </p>
  2038. </div>
  2039. </div>
  2040. <a id="a8cc7184902ce670d0822a28a8906df52" name="a8cc7184902ce670d0822a28a8906df52"></a>
  2041. <h2 class="memtitle"><span class="permalink"><a href="#a8cc7184902ce670d0822a28a8906df52">&#9670;&#160;</a></span>sTranslation()</h2>
  2042. <div class="memitem">
  2043. <div class="memproto">
  2044. <table class="mlabels">
  2045. <tr>
  2046. <td class="mlabels-left">
  2047. <table class="memname">
  2048. <tr>
  2049. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sTranslation </td>
  2050. <td>(</td>
  2051. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inV</em></span></td><td>)</td>
  2052. <td></td>
  2053. </tr>
  2054. </table>
  2055. </td>
  2056. <td class="mlabels-right">
  2057. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  2058. </tr>
  2059. </table>
  2060. </div><div class="memdoc">
  2061. <p>Get matrix that translates. </p>
  2062. </div>
  2063. </div>
  2064. <a id="a1e3a8da1cf3a631ffaf478ca3f6bb1ed" name="a1e3a8da1cf3a631ffaf478ca3f6bb1ed"></a>
  2065. <h2 class="memtitle"><span class="permalink"><a href="#a1e3a8da1cf3a631ffaf478ca3f6bb1ed">&#9670;&#160;</a></span>sZero()</h2>
  2066. <div class="memitem">
  2067. <div class="memproto">
  2068. <table class="mlabels">
  2069. <tr>
  2070. <td class="mlabels-left">
  2071. <table class="memname">
  2072. <tr>
  2073. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::sZero </td>
  2074. <td>(</td>
  2075. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2076. <td></td>
  2077. </tr>
  2078. </table>
  2079. </td>
  2080. <td class="mlabels-right">
  2081. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  2082. </tr>
  2083. </table>
  2084. </div><div class="memdoc">
  2085. <p>Zero matrix. </p>
  2086. </div>
  2087. </div>
  2088. <a id="a3445a728646fe8ad80381a0e55ea2289" name="a3445a728646fe8ad80381a0e55ea2289"></a>
  2089. <h2 class="memtitle"><span class="permalink"><a href="#a3445a728646fe8ad80381a0e55ea2289">&#9670;&#160;</a></span>ToMat44()</h2>
  2090. <div class="memitem">
  2091. <div class="memproto">
  2092. <table class="mlabels">
  2093. <tr>
  2094. <td class="mlabels-left">
  2095. <table class="memname">
  2096. <tr>
  2097. <td class="memname">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a> Mat44::ToMat44 </td>
  2098. <td>(</td>
  2099. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2100. <td> const</td>
  2101. </tr>
  2102. </table>
  2103. </td>
  2104. <td class="mlabels-right">
  2105. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  2106. </tr>
  2107. </table>
  2108. </div><div class="memdoc">
  2109. <p>In single precision mode just return the matrix itself. </p>
  2110. </div>
  2111. </div>
  2112. <a id="a388723db2d35de31efcee6ff0cfb711d" name="a388723db2d35de31efcee6ff0cfb711d"></a>
  2113. <h2 class="memtitle"><span class="permalink"><a href="#a388723db2d35de31efcee6ff0cfb711d">&#9670;&#160;</a></span>Transposed()</h2>
  2114. <div class="memitem">
  2115. <div class="memproto">
  2116. <table class="memname">
  2117. <tr>
  2118. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Transposed </td>
  2119. <td>(</td>
  2120. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2121. <td> const</td>
  2122. </tr>
  2123. </table>
  2124. </div><div class="memdoc">
  2125. <p>Transpose matrix. </p>
  2126. </div>
  2127. </div>
  2128. <a id="a29830ba9d80d31e00d30abcc0c099e7c" name="a29830ba9d80d31e00d30abcc0c099e7c"></a>
  2129. <h2 class="memtitle"><span class="permalink"><a href="#a29830ba9d80d31e00d30abcc0c099e7c">&#9670;&#160;</a></span>Transposed3x3()</h2>
  2130. <div class="memitem">
  2131. <div class="memproto">
  2132. <table class="memname">
  2133. <tr>
  2134. <td class="memname"><a class="el" href="class_mat44.html">Mat44</a> Mat44::Transposed3x3 </td>
  2135. <td>(</td>
  2136. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  2137. <td> const</td>
  2138. </tr>
  2139. </table>
  2140. </div><div class="memdoc">
  2141. <p>Transpose 3x3 subpart of matrix. </p>
  2142. </div>
  2143. </div>
  2144. <h2 class="groupheader">Friends And Related Symbol Documentation</h2>
  2145. <a id="afe860f899612b75ff8be07c018614c5b" name="afe860f899612b75ff8be07c018614c5b"></a>
  2146. <h2 class="memtitle"><span class="permalink"><a href="#afe860f899612b75ff8be07c018614c5b">&#9670;&#160;</a></span>operator*</h2>
  2147. <div class="memitem">
  2148. <div class="memproto">
  2149. <table class="mlabels">
  2150. <tr>
  2151. <td class="mlabels-left">
  2152. <table class="memname">
  2153. <tr>
  2154. <td class="memname">JPH_INLINE <a class="el" href="class_mat44.html">Mat44</a> operator* </td>
  2155. <td>(</td>
  2156. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inV</em></span>, </td>
  2157. </tr>
  2158. <tr>
  2159. <td class="paramkey"></td>
  2160. <td></td>
  2161. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span>&#160;)</td>
  2162. </tr>
  2163. </table>
  2164. </td>
  2165. <td class="mlabels-right">
  2166. <span class="mlabels"><span class="mlabel">friend</span></span> </td>
  2167. </tr>
  2168. </table>
  2169. </div><div class="memdoc">
  2170. </div>
  2171. </div>
  2172. <a id="abc0855ee1ce37289515c5b55dfeac1a6" name="abc0855ee1ce37289515c5b55dfeac1a6"></a>
  2173. <h2 class="memtitle"><span class="permalink"><a href="#abc0855ee1ce37289515c5b55dfeac1a6">&#9670;&#160;</a></span>operator&lt;&lt;</h2>
  2174. <div class="memitem">
  2175. <div class="memproto">
  2176. <table class="mlabels">
  2177. <tr>
  2178. <td class="mlabels-left">
  2179. <table class="memname">
  2180. <tr>
  2181. <td class="memname">ostream &amp; operator&lt;&lt; </td>
  2182. <td>(</td>
  2183. <td class="paramtype">ostream &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span>, </td>
  2184. </tr>
  2185. <tr>
  2186. <td class="paramkey"></td>
  2187. <td></td>
  2188. <td class="paramtype"><a class="el" href="_math_types_8h.html#af10dd31c5ad4acb62aba8025732597e6">Mat44Arg</a></td> <td class="paramname"><span class="paramname"><em>inM</em></span>&#160;)</td>
  2189. </tr>
  2190. </table>
  2191. </td>
  2192. <td class="mlabels-right">
  2193. <span class="mlabels"><span class="mlabel">friend</span></span> </td>
  2194. </tr>
  2195. </table>
  2196. </div><div class="memdoc">
  2197. <p>To String. </p>
  2198. </div>
  2199. </div>
  2200. <hr/>The documentation for this class was generated from the following files:<ul>
  2201. <li>Jolt/Math/<a class="el" href="_mat44_8h_source.html">Mat44.h</a></li>
  2202. <li>Jolt/Math/<a class="el" href="_mat44_8inl_source.html">Mat44.inl</a></li>
  2203. </ul>
  2204. </div><!-- contents -->
  2205. </div><!-- doc-content -->
  2206. <!-- start footer part -->
  2207. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  2208. <ul>
  2209. <li class="navelem"><a class="el" href="class_mat44.html">Mat44</a></li>
  2210. <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>
  2211. </ul>
  2212. </div>
  2213. </body>
  2214. </html>