Как преобразовать радианы в градусы?

Иногда я сталкиваюсь с этим и всегда забываю, как это сделать.

Одна из тех вещей, которые всплывают очень часто.

Кроме того, по какой формуле переводятся углы, выраженные в радианах, в градусы и обратно?


person Hans Sjunnesson    schedule 25.09.2008    source источник
comment
Я не понимаю, почему люди голосуют против этого; некоторые люди не склонны к математике.   -  person thesmallprint    schedule 26.09.2008
comment
это просто вопрос формулировки. Я перефразировал это как проблему программирования, а не как математическую задачу, и вуаля, она подходит.   -  person DevelopingChris    schedule 26.09.2008
comment
Отлично, я искренне верю, что такие базовые вопросы имеют место при переполнении стека, если это должен быть портал с информацией о программировании.   -  person Hans Sjunnesson    schedule 26.09.2008
comment
Название этого вопроса не имеет смысла. [B] встроенный метод --- встроенный в какой?   -  person Michael J. Barber    schedule 27.09.2011
comment
Блин, если я знаю, кто-то его редактировал.   -  person Hans Sjunnesson    schedule 27.09.2011
comment
Итак, за 2 секунды поиска в Google вы получите 31+ баллов, а за однострочный ответ кто-то получит 100+ баллов? вздох...   -  person Alex    schedule 08.01.2013
comment
Я собираюсь попросить метод преобразования Цельсия в Фаренгейт и обратно, я тоже все время забываю об этом   -  person Alex    schedule 08.01.2013
comment
@alex, сделай это, теперь ты будешь разгромлен; это очень старый вопрос, и сайт переехал. Отметьте это как не по теме и пусть это вас не беспокоит ...   -  person Ben    schedule 08.01.2013
comment
@Ben, я не заметил дату, но если ты не узнал, это был сарказм.   -  person Alex    schedule 08.01.2013
comment
StackOverflow - это больше, чем форум для вопросов и ответов. Это справочная информация. Изначально я поставил этот вопрос здесь как справочный, потому что он действительно распространен. Он принадлежит здесь, поэтому, когда кто-то ответит «Просто погуглите», Google направит вас сюда.   -  person Hans Sjunnesson    schedule 09.01.2013


Ответы (11)


radians = degrees * (pi/180)

degrees = radians * (180/pi)

Что касается реализации, главный вопрос заключается в том, насколько точно вы хотите определить значение числа пи. Здесь есть связанное обсуждение здесь

person Dave Costa    schedule 25.09.2008
comment
Pi = 4 * ArcTan (1) можно использовать, если у вас нет Pi в вашей системе / калькуляторе или вы просто не хотите вводить его со всеми десятичными знаками. - person Axel Kemper; 08.01.2013
comment
Возможно, этого не было в 2008 году, но в настоящее время вы можете просто использовать константу Math.PI. - person Bart; 24.02.2014
comment
это верно?? Пи радиан = 180 градусов радиан = 180 градусов / ПИ радиан = 180 / ПИ * градусы Я не знаю вашу формулу. почему 180 и PI изменены? - person Hogun; 14.03.2014
comment
Метки @Hogun Unit - это не то же самое, что алгебраические переменные. Когда вы говорите, что радианы Пи = 180 градусов, вы говорите в единицах, что эквивалентно тому, что 1 фут = 12 дюймов. Тогда вы не берете метки единиц измерения и не рассматриваете их как переменные, что дало бы вам явно неправильное уравнение: футы = 12 * дюймов. - person Dave Costa; 16.03.2014
comment
Не нужно указывать градусы = радианы * 180 / Math.PI; радианы = градусы * Math.PI / 180; - person Pawel; 25.08.2016
comment
@Pawel. Хотя вы правы, я осмелюсь сказать, что автор использовал скобки, чтобы передать концепцию концептуального объединения функций. - person Jacksonkr; 28.03.2017

полный круг в радианах равен 2 * пи. Полный круг в градусах равен 360. Чтобы перейти от градусов к радианам, это (d / 360) * 2 * pi или d * pi / 180.

person nsayer    schedule 25.09.2008

x рад в градусах -> x * 180 / pi
x градусов в радах -> x * pi / 180

Думаю, если бы вы хотели сделать для этого функцию [на PHP]:

function convert($type, $num) {
    if ($type == "rads") {
          $result = $num*180/pi();
        }

    if ($type == "degs") {
          $result = $num*pi()/180;
        }

    return $result;
  }

Да, это, наверное, можно было бы написать лучше.

person thesmallprint    schedule 25.09.2008

В javascript это можно сделать так

radians = degrees * (Math.PI/180);

degrees = radians * (180/Math.PI);
person Rayiez    schedule 15.06.2016

Для меня это работает достаточно хорошо :)

// deg2rad * degrees = radians
#define deg2rad (3.14159265/180.0)
// rad2deg * radians = degrees
#define rad2deg (180/3.14159265)
person Warpling    schedule 01.04.2012

180 градусов = пи * радианы

person Charles Graham    schedule 25.09.2008
comment
180 градусов = пи радиан. - person garg; 15.09.2013

360 градусов - это 2 * PI радиана

Вы можете найти формулы преобразования по адресу: http://en.wikipedia.org/wiki/Radian#Conversion_between_radians_and_degrees.

person kokos    schedule 25.09.2008

360 градусов = 2 * пи радиан

Это означает, что deg2rad (x) = x * pi / 180 и rad2deg (x) = 180x / pi;

person Hannes Ovrén    schedule 25.09.2008

пи Радианы = 180 градусов

Итак, 1 градус = пи / 180 радиан.

или 1 радиан = 180 / пи градусов

person manobes    schedule 25.09.2008

Для double в С # это может быть полезно:

        public static double Conv_DegreesToRadians(this double degrees)
        {
            //return degrees * (Math.PI / 180d);
            return degrees * 0.017453292519943295d;
        }
        public static double Conv_RadiansToDegrees(this double radians)
        {
            //return radians * (180d / Math.PI);
            return radians * 57.295779513082323d;
        }
person Koray    schedule 14.02.2017

Вот код, который расширяет Object с помощью rad(deg), deg(rad), а также еще двух полезных функций: getAngle(point1,point2) и getDistance(point1,point2), где точка должна иметь свойства x и y.

Object.prototype.rad = (deg) => Math.PI/180 * deg;
Object.prototype.deg = (rad) => 180/Math.PI * rad;
Object.prototype.getAngle = (point1, point2) => Math.atan2(point1.y - point2.y, point1.x - point2.x);
Object.prototype.getDistance = (point1, point2) => Math.sqrt(Math.pow(point1.x-point2.x, 2) + Math.pow(point1.y-point2.y, 2));
person Netsi1964    schedule 07.06.2020