Math.html 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <h1>[name]</h1>
  2. <div class="desc">Math utility functions</div>
  3. <h2>Methods</h2>
  4. <h3>.clamp( [page:Float x], [page:Float a], [page:Float b] ) [page:Float]</h3>
  5. <div>
  6. x — Value to be clamped.<br />
  7. a — Minimum value<br />
  8. b — Maximum value.
  9. </div>
  10. <div>
  11. Clamps the *x* to be between *a* and *b*.
  12. </div>
  13. <h3>.clampBottom( [page:Float x], [page:Float a] ) [page:Float]</h3>
  14. <div>
  15. x — Value to be clamped.<br />
  16. a — Minimum value
  17. </div>
  18. <div>
  19. Clamps the *x* to be larger than *a*.
  20. </div>
  21. <h3>.mapLinear( [page:Float x], [page:Float a] ) [page:Float]</h3>
  22. <div>
  23. x — Value to be mapped.<br />
  24. a1 — Minimum value for range A.<br />
  25. a2 — Maximum value for range A.<br />
  26. b1 — Minimum value for range B.<br />
  27. b2 — Maximum value for range B.
  28. </div>
  29. <div>
  30. Linear mapping of *x* from range [*a1*, *a2*] to range [*b1*, *b2*].
  31. </div>
  32. <h3>.random16() [page:Float]</h3>
  33. <div>
  34. Random float from 0 to 1 with 16 bits of randomness.<br />
  35. Standard Math.random() creates repetitive patterns when applied over larger space.
  36. </div>
  37. <h3>.randInt( [page:Integer low], [page:Integer high] ) [page:Integer]</h3>
  38. <div>
  39. Random integer from *low* to *high* interval.
  40. </div>
  41. <h3>.randFloat( [page:Float low], [page:Float high] ) [page:Float]</h3>
  42. <div>
  43. Random float from *low* to *high* interval.
  44. </div>
  45. <h3>.randFloatSpread( [page:Float range] ) [page:Float]</h3>
  46. <div>
  47. Random float from *- range / 2* to *range / 2* interval.
  48. </div>
  49. <h2>Source</h2>
  50. [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]