class_spring_settings.html 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427
  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: SpringSettings 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_spring_settings.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-methods">Public Member Functions</a> &#124;
  108. <a href="#pub-attribs">Public Attributes</a> &#124;
  109. <a href="class_spring_settings-members.html">List of all members</a> </div>
  110. <div class="headertitle"><div class="title">SpringSettings Class Reference</div></div>
  111. </div><!--header-->
  112. <div class="contents">
  113. <p>Settings for a linear or angular spring.
  114. <a href="#details">More...</a></p>
  115. <p><code>#include &lt;<a class="el" href="_spring_settings_8h_source.html">SpringSettings.h</a>&gt;</code></p>
  116. <table class="memberdecls">
  117. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
  118. Public Member Functions</h2></td></tr>
  119. <tr class="memitem:aefa8b0caa0840d58f74b297ad275c1cf" id="r_aefa8b0caa0840d58f74b297ad275c1cf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aefa8b0caa0840d58f74b297ad275c1cf">SpringSettings</a> ()=default</td></tr>
  120. <tr class="memdesc:aefa8b0caa0840d58f74b297ad275c1cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
  121. <tr class="separator:aefa8b0caa0840d58f74b297ad275c1cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  122. <tr class="memitem:ad21b30d2d06ed66e8660ccfc14403827" id="r_ad21b30d2d06ed66e8660ccfc14403827"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad21b30d2d06ed66e8660ccfc14403827">SpringSettings</a> (const <a class="el" href="class_spring_settings.html">SpringSettings</a> &amp;)=default</td></tr>
  123. <tr class="separator:ad21b30d2d06ed66e8660ccfc14403827"><td class="memSeparator" colspan="2">&#160;</td></tr>
  124. <tr class="memitem:a035ab930afc30365053d1814f838f335" id="r_a035ab930afc30365053d1814f838f335"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_spring_settings.html">SpringSettings</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a035ab930afc30365053d1814f838f335">operator=</a> (const <a class="el" href="class_spring_settings.html">SpringSettings</a> &amp;)=default</td></tr>
  125. <tr class="separator:a035ab930afc30365053d1814f838f335"><td class="memSeparator" colspan="2">&#160;</td></tr>
  126. <tr class="memitem:a3cf17470851be12c258e0c2f200f27e4" id="r_a3cf17470851be12c258e0c2f200f27e4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3cf17470851be12c258e0c2f200f27e4">SpringSettings</a> (<a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512d">ESpringMode</a> inMode, float inFrequencyOrStiffness, float inDamping)</td></tr>
  127. <tr class="separator:a3cf17470851be12c258e0c2f200f27e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  128. <tr class="memitem:a8da853a3005b1797148dd6c8350d0c62" id="r_a8da853a3005b1797148dd6c8350d0c62"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8da853a3005b1797148dd6c8350d0c62">SaveBinaryState</a> (<a class="el" href="class_stream_out.html">StreamOut</a> &amp;inStream) const</td></tr>
  129. <tr class="memdesc:a8da853a3005b1797148dd6c8350d0c62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saves the contents of the spring settings in binary form to inStream. <br /></td></tr>
  130. <tr class="separator:a8da853a3005b1797148dd6c8350d0c62"><td class="memSeparator" colspan="2">&#160;</td></tr>
  131. <tr class="memitem:af6f75e6e5167b54a2cff64808a106297" id="r_af6f75e6e5167b54a2cff64808a106297"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af6f75e6e5167b54a2cff64808a106297">RestoreBinaryState</a> (<a class="el" href="class_stream_in.html">StreamIn</a> &amp;inStream)</td></tr>
  132. <tr class="memdesc:af6f75e6e5167b54a2cff64808a106297"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restores contents from the binary stream inStream. <br /></td></tr>
  133. <tr class="separator:af6f75e6e5167b54a2cff64808a106297"><td class="memSeparator" colspan="2">&#160;</td></tr>
  134. <tr class="memitem:afb683eddb2db25f62403a6af6410eebb" id="r_afb683eddb2db25f62403a6af6410eebb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afb683eddb2db25f62403a6af6410eebb">HasStiffness</a> () const</td></tr>
  135. <tr class="memdesc:afb683eddb2db25f62403a6af6410eebb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the spring has a valid frequency / stiffness, if not the spring will be hard. <br /></td></tr>
  136. <tr class="separator:afb683eddb2db25f62403a6af6410eebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
  137. </table><table class="memberdecls">
  138. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
  139. Public Attributes</h2></td></tr>
  140. <tr class="memitem:a7d27c541e7d25d9da0c263ec99ea528a" id="r_a7d27c541e7d25d9da0c263ec99ea528a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512d">ESpringMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7d27c541e7d25d9da0c263ec99ea528a">mMode</a> = <a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512da52630869b4ed10261d514c91e9c9c018">ESpringMode::FrequencyAndDamping</a></td></tr>
  141. <tr class="separator:a7d27c541e7d25d9da0c263ec99ea528a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  142. <tr class="memitem:a22be9edf8636e091201e3191e47efbe4" id="r_a22be9edf8636e091201e3191e47efbe4"><td class="memItemLeft" >union {&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  143. <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
  144. <tr class="memitem:a66afd2dacb3aa59de882ad5e87b5153a" id="r_a66afd2dacb3aa59de882ad5e87b5153a"><td class="memItemLeft" >&#160;&#160;&#160;float&#160;&#160;&#160;<a class="el" href="#acea8e3f5767edbfaffa01417733b5dc0">mFrequency</a> = 0.0f&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  145. <tr class="separator:a66afd2dacb3aa59de882ad5e87b5153a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  146. <tr class="memitem:a9f527b170cdab4b15e295d719b485984" id="r_a9f527b170cdab4b15e295d719b485984"><td class="memItemLeft" >&#160;&#160;&#160;float&#160;&#160;&#160;<a class="el" href="#a688815c0e85518f1ac42f1d077415472">mStiffness</a>&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  147. <tr class="separator:a9f527b170cdab4b15e295d719b485984"><td class="memSeparator" colspan="2">&#160;</td></tr>
  148. <tr class="memitem:a22be9edf8636e091201e3191e47efbe4" id="r_a22be9edf8636e091201e3191e47efbe4"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom">&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
  149. <tr class="separator:a22be9edf8636e091201e3191e47efbe4"><td class="memSeparator" colspan="2">&#160;</td></tr>
  150. <tr class="memitem:a72165bbe14974afb17df18e88f6d205e" id="r_a72165bbe14974afb17df18e88f6d205e"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a72165bbe14974afb17df18e88f6d205e">mDamping</a> = 0.0f</td></tr>
  151. <tr class="separator:a72165bbe14974afb17df18e88f6d205e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. </table>
  153. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  154. <div class="textblock"><p>Settings for a linear or angular spring. </p>
  155. </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  156. <a id="aefa8b0caa0840d58f74b297ad275c1cf" name="aefa8b0caa0840d58f74b297ad275c1cf"></a>
  157. <h2 class="memtitle"><span class="permalink"><a href="#aefa8b0caa0840d58f74b297ad275c1cf">&#9670;&#160;</a></span>SpringSettings() <span class="overload">[1/3]</span></h2>
  158. <div class="memitem">
  159. <div class="memproto">
  160. <table class="mlabels">
  161. <tr>
  162. <td class="mlabels-left">
  163. <table class="memname">
  164. <tr>
  165. <td class="memname">SpringSettings::SpringSettings </td>
  166. <td>(</td>
  167. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  168. <td></td>
  169. </tr>
  170. </table>
  171. </td>
  172. <td class="mlabels-right">
  173. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  174. </tr>
  175. </table>
  176. </div><div class="memdoc">
  177. <p>Constructor. </p>
  178. </div>
  179. </div>
  180. <a id="ad21b30d2d06ed66e8660ccfc14403827" name="ad21b30d2d06ed66e8660ccfc14403827"></a>
  181. <h2 class="memtitle"><span class="permalink"><a href="#ad21b30d2d06ed66e8660ccfc14403827">&#9670;&#160;</a></span>SpringSettings() <span class="overload">[2/3]</span></h2>
  182. <div class="memitem">
  183. <div class="memproto">
  184. <table class="mlabels">
  185. <tr>
  186. <td class="mlabels-left">
  187. <table class="memname">
  188. <tr>
  189. <td class="memname">SpringSettings::SpringSettings </td>
  190. <td>(</td>
  191. <td class="paramtype">const <a class="el" href="class_spring_settings.html">SpringSettings</a> &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  192. <td></td>
  193. </tr>
  194. </table>
  195. </td>
  196. <td class="mlabels-right">
  197. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  198. </tr>
  199. </table>
  200. </div><div class="memdoc">
  201. </div>
  202. </div>
  203. <a id="a3cf17470851be12c258e0c2f200f27e4" name="a3cf17470851be12c258e0c2f200f27e4"></a>
  204. <h2 class="memtitle"><span class="permalink"><a href="#a3cf17470851be12c258e0c2f200f27e4">&#9670;&#160;</a></span>SpringSettings() <span class="overload">[3/3]</span></h2>
  205. <div class="memitem">
  206. <div class="memproto">
  207. <table class="mlabels">
  208. <tr>
  209. <td class="mlabels-left">
  210. <table class="memname">
  211. <tr>
  212. <td class="memname">SpringSettings::SpringSettings </td>
  213. <td>(</td>
  214. <td class="paramtype"><a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512d">ESpringMode</a></td> <td class="paramname"><span class="paramname"><em>inMode</em></span>, </td>
  215. </tr>
  216. <tr>
  217. <td class="paramkey"></td>
  218. <td></td>
  219. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inFrequencyOrStiffness</em></span>, </td>
  220. </tr>
  221. <tr>
  222. <td class="paramkey"></td>
  223. <td></td>
  224. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inDamping</em></span>&#160;)</td>
  225. </tr>
  226. </table>
  227. </td>
  228. <td class="mlabels-right">
  229. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  230. </tr>
  231. </table>
  232. </div><div class="memdoc">
  233. </div>
  234. </div>
  235. <h2 class="groupheader">Member Function Documentation</h2>
  236. <a id="afb683eddb2db25f62403a6af6410eebb" name="afb683eddb2db25f62403a6af6410eebb"></a>
  237. <h2 class="memtitle"><span class="permalink"><a href="#afb683eddb2db25f62403a6af6410eebb">&#9670;&#160;</a></span>HasStiffness()</h2>
  238. <div class="memitem">
  239. <div class="memproto">
  240. <table class="mlabels">
  241. <tr>
  242. <td class="mlabels-left">
  243. <table class="memname">
  244. <tr>
  245. <td class="memname">bool SpringSettings::HasStiffness </td>
  246. <td>(</td>
  247. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  248. <td> const</td>
  249. </tr>
  250. </table>
  251. </td>
  252. <td class="mlabels-right">
  253. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  254. </tr>
  255. </table>
  256. </div><div class="memdoc">
  257. <p>Check if the spring has a valid frequency / stiffness, if not the spring will be hard. </p>
  258. </div>
  259. </div>
  260. <a id="a035ab930afc30365053d1814f838f335" name="a035ab930afc30365053d1814f838f335"></a>
  261. <h2 class="memtitle"><span class="permalink"><a href="#a035ab930afc30365053d1814f838f335">&#9670;&#160;</a></span>operator=()</h2>
  262. <div class="memitem">
  263. <div class="memproto">
  264. <table class="mlabels">
  265. <tr>
  266. <td class="mlabels-left">
  267. <table class="memname">
  268. <tr>
  269. <td class="memname"><a class="el" href="class_spring_settings.html">SpringSettings</a> &amp; SpringSettings::operator= </td>
  270. <td>(</td>
  271. <td class="paramtype">const <a class="el" href="class_spring_settings.html">SpringSettings</a> &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  272. <td></td>
  273. </tr>
  274. </table>
  275. </td>
  276. <td class="mlabels-right">
  277. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  278. </tr>
  279. </table>
  280. </div><div class="memdoc">
  281. </div>
  282. </div>
  283. <a id="af6f75e6e5167b54a2cff64808a106297" name="af6f75e6e5167b54a2cff64808a106297"></a>
  284. <h2 class="memtitle"><span class="permalink"><a href="#af6f75e6e5167b54a2cff64808a106297">&#9670;&#160;</a></span>RestoreBinaryState()</h2>
  285. <div class="memitem">
  286. <div class="memproto">
  287. <table class="memname">
  288. <tr>
  289. <td class="memname">void SpringSettings::RestoreBinaryState </td>
  290. <td>(</td>
  291. <td class="paramtype"><a class="el" href="class_stream_in.html">StreamIn</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span></td><td>)</td>
  292. <td></td>
  293. </tr>
  294. </table>
  295. </div><div class="memdoc">
  296. <p>Restores contents from the binary stream inStream. </p>
  297. </div>
  298. </div>
  299. <a id="a8da853a3005b1797148dd6c8350d0c62" name="a8da853a3005b1797148dd6c8350d0c62"></a>
  300. <h2 class="memtitle"><span class="permalink"><a href="#a8da853a3005b1797148dd6c8350d0c62">&#9670;&#160;</a></span>SaveBinaryState()</h2>
  301. <div class="memitem">
  302. <div class="memproto">
  303. <table class="memname">
  304. <tr>
  305. <td class="memname">void SpringSettings::SaveBinaryState </td>
  306. <td>(</td>
  307. <td class="paramtype"><a class="el" href="class_stream_out.html">StreamOut</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span></td><td>)</td>
  308. <td> const</td>
  309. </tr>
  310. </table>
  311. </div><div class="memdoc">
  312. <p>Saves the contents of the spring settings in binary form to inStream. </p>
  313. </div>
  314. </div>
  315. <h2 class="groupheader">Member Data Documentation</h2>
  316. <a id="a22be9edf8636e091201e3191e47efbe4" name="a22be9edf8636e091201e3191e47efbe4"></a>
  317. <h2 class="memtitle"><span class="permalink"><a href="#a22be9edf8636e091201e3191e47efbe4">&#9670;&#160;</a></span>[union]</h2>
  318. <div class="memitem">
  319. <div class="memproto">
  320. <table class="memname">
  321. <tr>
  322. <td class="memname">union { ... } <a class="el" href="class_spring_settings.html">SpringSettings</a></td>
  323. </tr>
  324. </table>
  325. </div><div class="memdoc">
  326. </div>
  327. </div>
  328. <a id="a72165bbe14974afb17df18e88f6d205e" name="a72165bbe14974afb17df18e88f6d205e"></a>
  329. <h2 class="memtitle"><span class="permalink"><a href="#a72165bbe14974afb17df18e88f6d205e">&#9670;&#160;</a></span>mDamping</h2>
  330. <div class="memitem">
  331. <div class="memproto">
  332. <table class="memname">
  333. <tr>
  334. <td class="memname">float SpringSettings::mDamping = 0.0f</td>
  335. </tr>
  336. </table>
  337. </div><div class="memdoc">
  338. <p>When mSpringMode = <a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512da52630869b4ed10261d514c91e9c9c018" title="Frequency and damping are specified.">ESpringMode::FrequencyAndDamping</a> mDamping is the damping ratio (0 = no damping, 1 = critical damping). When mSpringMode = <a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512da80c2dd5c28197f2baebff76bf0299d47" title="Stiffness and damping are specified.">ESpringMode::StiffnessAndDamping</a> mDamping is the damping (c) in the spring equation F = -k * x - c * v for a linear or T = -k * theta - c * w for an angular spring. Note that if you set mDamping = 0, you will not get an infinite oscillation. Because we integrate physics using an explicit Euler scheme, there is always energy loss. This is done to keep the simulation from exploding, because with a damping of 0 and even the slightest rounding error, the oscillation could become bigger and bigger until the simulation explodes. </p>
  339. </div>
  340. </div>
  341. <a id="acea8e3f5767edbfaffa01417733b5dc0" name="acea8e3f5767edbfaffa01417733b5dc0"></a>
  342. <h2 class="memtitle"><span class="permalink"><a href="#acea8e3f5767edbfaffa01417733b5dc0">&#9670;&#160;</a></span>mFrequency</h2>
  343. <div class="memitem">
  344. <div class="memproto">
  345. <table class="memname">
  346. <tr>
  347. <td class="memname">float SpringSettings::mFrequency = 0.0f</td>
  348. </tr>
  349. </table>
  350. </div><div class="memdoc">
  351. <p>Valid when mSpringMode = <a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512da52630869b4ed10261d514c91e9c9c018" title="Frequency and damping are specified.">ESpringMode::FrequencyAndDamping</a>. If mFrequency &gt; 0 the constraint will be soft and mFrequency specifies the oscillation frequency in Hz. If mFrequency &lt;= 0, mDamping is ignored and the constraint will have hard limits (as hard as the time step / the number of velocity / position solver steps allows). </p>
  352. </div>
  353. </div>
  354. <a id="a7d27c541e7d25d9da0c263ec99ea528a" name="a7d27c541e7d25d9da0c263ec99ea528a"></a>
  355. <h2 class="memtitle"><span class="permalink"><a href="#a7d27c541e7d25d9da0c263ec99ea528a">&#9670;&#160;</a></span>mMode</h2>
  356. <div class="memitem">
  357. <div class="memproto">
  358. <table class="memname">
  359. <tr>
  360. <td class="memname"><a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512d">ESpringMode</a> SpringSettings::mMode = <a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512da52630869b4ed10261d514c91e9c9c018">ESpringMode::FrequencyAndDamping</a></td>
  361. </tr>
  362. </table>
  363. </div><div class="memdoc">
  364. <p>Selects the way in which the spring is defined If the mode is StiffnessAndDamping then mFrequency becomes the stiffness (k) and mDamping becomes the damping ratio (c) in the spring equation F = -k * x - c * v. Otherwise the properties are as documented. </p>
  365. </div>
  366. </div>
  367. <a id="a688815c0e85518f1ac42f1d077415472" name="a688815c0e85518f1ac42f1d077415472"></a>
  368. <h2 class="memtitle"><span class="permalink"><a href="#a688815c0e85518f1ac42f1d077415472">&#9670;&#160;</a></span>mStiffness</h2>
  369. <div class="memitem">
  370. <div class="memproto">
  371. <table class="memname">
  372. <tr>
  373. <td class="memname">float SpringSettings::mStiffness</td>
  374. </tr>
  375. </table>
  376. </div><div class="memdoc">
  377. <p>Valid when mSpringMode = <a class="el" href="_spring_settings_8h.html#ac805e5e93f24003512d2ca7e0d71512da80c2dd5c28197f2baebff76bf0299d47" title="Stiffness and damping are specified.">ESpringMode::StiffnessAndDamping</a>. If mStiffness &gt; 0 the constraint will be soft and mStiffness specifies the stiffness (k) in the spring equation F = -k * x - c * v for a linear or T = -k * theta - c * w for an angular spring. If mStiffness &lt;= 0, mDamping is ignored and the constraint will have hard limits (as hard as the time step / the number of velocity / position solver steps allows).</p>
  378. <p>Note that stiffness values are large numbers. To calculate a ballpark value for the needed stiffness you can use: force = stiffness * delta_spring_length = mass * gravity &lt;=&gt; stiffness = mass * gravity / delta_spring_length. So if your object weighs 1500 kg and the spring compresses by 2 meters, you need a stiffness in the order of 1500 * 9.81 / 2 ~ 7500 N/m. </p>
  379. </div>
  380. </div>
  381. <hr/>The documentation for this class was generated from the following files:<ul>
  382. <li>Jolt/Physics/Constraints/<a class="el" href="_spring_settings_8h_source.html">SpringSettings.h</a></li>
  383. <li>Jolt/Physics/Constraints/<a class="el" href="_spring_settings_8cpp.html">SpringSettings.cpp</a></li>
  384. </ul>
  385. </div><!-- contents -->
  386. </div><!-- doc-content -->
  387. <!-- start footer part -->
  388. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  389. <ul>
  390. <li class="navelem"><a class="el" href="class_spring_settings.html">SpringSettings</a></li>
  391. <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>
  392. </ul>
  393. </div>
  394. </body>
  395. </html>