diff options
author | Pirate Praveen <praveen@debian.org> | 2017-10-09 11:57:35 +0530 |
---|---|---|
committer | Pirate Praveen <praveen@debian.org> | 2017-10-09 11:57:35 +0530 |
commit | 3db5c79f87119a5b46ab63cbfa6050700a978117 (patch) | |
tree | ce0bc40cb6a86a7c0e20c6c9cbde83e18b1d9c44 /src/math.js |
Import Upstream version 1.9.0
Diffstat (limited to 'src/math.js')
-rw-r--r-- | src/math.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/math.js b/src/math.js new file mode 100644 index 0000000..32f41fb --- /dev/null +++ b/src/math.js @@ -0,0 +1,35 @@ +export var epsilon = 1e-6; +export var epsilon2 = 1e-12; +export var pi = Math.PI; +export var halfPi = pi / 2; +export var quarterPi = pi / 4; +export var tau = pi * 2; + +export var degrees = 180 / pi; +export var radians = pi / 180; + +export var abs = Math.abs; +export var atan = Math.atan; +export var atan2 = Math.atan2; +export var cos = Math.cos; +export var ceil = Math.ceil; +export var exp = Math.exp; +export var floor = Math.floor; +export var log = Math.log; +export var pow = Math.pow; +export var sin = Math.sin; +export var sign = Math.sign || function(x) { return x > 0 ? 1 : x < 0 ? -1 : 0; }; +export var sqrt = Math.sqrt; +export var tan = Math.tan; + +export function acos(x) { + return x > 1 ? 0 : x < -1 ? pi : Math.acos(x); +} + +export function asin(x) { + return x > 1 ? halfPi : x < -1 ? -halfPi : Math.asin(x); +} + +export function haversin(x) { + return (x = sin(x / 2)) * x; +} |