1 | var utils = require('../utils')
|
2 | , nodes = require('../nodes');
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 | function tan(angle) {
|
13 | utils.assertType(angle, 'unit', 'angle');
|
14 |
|
15 | var radians = angle.val;
|
16 |
|
17 | if (angle.type === 'deg') {
|
18 | radians *= Math.PI / 180;
|
19 | }
|
20 |
|
21 | var m = Math.pow(10, 9);
|
22 |
|
23 | var sin = Math.round(Math.sin(radians) * m) / m
|
24 | , cos = Math.round(Math.cos(radians) * m) / m
|
25 | , tan = Math.round(m * sin / cos ) / m;
|
26 |
|
27 | return new nodes.Unit(tan, '');
|
28 | }
|
29 | tan.params = ['angle'];
|
30 | module.exports = tan;
|