загар в JavaScript - PullRequest
       4

загар в JavaScript

12 голосов
/ 17 января 2011

загар (5,3) = 0,09276719520463

но в javascript:

Math.tan (5,3) = -1,50127339580693

как рассчитать Math.tan (что-то) в javascript в режиме deg?

Ответы [ 3 ]

28 голосов
/ 17 января 2011

Вместо того, чтобы написать для нее функцию-обертку (и получить удар по производительности), вы можете умножить на следующие константы:

var deg2rad = Math.PI/180;
var rad2deg = 180/Math.PI;

И затем использовать их следующим образом:

var ratio   = Math.tan( myDegrees * deg2rad );
var degrees = Math.atan( ratio ) * rad2deg;

JavaScript работает только в радианах, как в качестве аргументов, так и в качестве возвращаемых значений.Вы можете конвертировать их по своему усмотрению.

Кроме того, обратите внимание, что если вы пытаетесь найти градусы поворота для координат xy, вы должны использовать Math.atan2, чтобы JavaScript мог определить, какой квадрантточка в и даст вам правильный угол:

[ Math.atan( 1/ 1), Math.atan2( 1, 1) ]; // [  45,  45 ]
[ Math.atan( 1/-1), Math.atan2( 1,-1) ]; // [ -45, 135 ]
[ Math.atan(-1/ 1), Math.atan2(-1, 1) ]; // [ -45, -45 ]
[ Math.atan(-1/-1), Math.atan2(-1,-1) ]; // [  45,-135 ]
11 голосов
/ 17 января 2011

С https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Math/tan

function getTanDeg(deg) {
   var rad = deg * Math.PI/180;
   return Math.tan(rad)
}
5 голосов
/ 01 августа 2012

Так трудно найти!

Чтобы выполнить базовую треугольную математику в JavaScript, используйте ..

Math.atan(opposite/adjacent) * 180/Math.PI
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...