Quelle est la méthode de conversion des radians en degrés?


156

Je rencontre cela occasionnellement et j'oublie toujours comment le faire.

Une de ces choses qui surgissent si souvent.

Aussi, quelle est la formule pour convertir les angles exprimés en radians en degrés et inversement?


4
Je ne vois pas pourquoi les gens votent contre cela; certaines personnes ne sont pas inclinées mathématiquement.
thesmallprint

1
c'est juste une question de formulation. Je l'ai reformulé comme un problème de programmation au lieu d'un problème de mathématiques, et voilà, ça convient.
DevelopingChris

3
Le titre de cette question n'a aucun sens. "[B] uilt in method" --- intégré à quoi?
Michael J.Barber

1
Je vais aller demander une méthode pour convertir Celsius en Fahrenheit et inversement, j'oublie toujours celle-là aussi
Alex

7
StackOverflow est plus qu'un forum de questions et réponses. C'est un lieu de référence. J'ai initialement posé la question ici comme une question de référence, car c'est vraiment très courant. Il appartient ici, alors quand quelqu'un répond "Just Google it", Google vous dirigera ici.
Hans Sjunnesson le

Réponses:


273
radians = degrees * (pi/180)

degrees = radians * (180/pi)

En ce qui concerne la mise en œuvre, la question principale est de savoir dans quelle mesure vous voulez être précis sur la valeur de pi. Il y a une discussion connexe ici


11
Pi = 4 * ArcTan (1) pourrait être utilisé, au cas où vous n'auriez pas Pi sur votre système / calculatrice ou si vous ne voulez tout simplement pas le taper avec toutes les décimales
Axel Kemper

21
Peut-être que cela n'était pas disponible en 2008, mais de nos jours, vous pouvez simplement utiliser la Math.PIconstante.
Bart

1
Les étiquettes @Hogun Unit ne sont pas la même chose que les variables algébriques. Lorsque vous dites "PI radians = 180 degrés", vous parlez en unités, ce qui équivaut à dire "1 pied = 12 pouces". Vous ne prenez pas alors les étiquettes d'unité et ne les traitez pas comme des variables, ce qui vous donnerait l'équation manifestement fausse "pieds = 12 * pouces".
Dave Costa

1
Pas besoin de degrés parens = radians * 180 / Math.PI; radians = degrés * Math.PI / 180;
Pawel

2
@Pawel Bien que vous ayez raison, j'ose dire que l'auteur a utilisé les parenthèses pour transmettre un concept sur la façon dont la fonction s'articule conceptuellement.
Jacksonkr

10

un cercle complet en radians vaut 2 * pi. Un cercle complet en degrés est de 360. Pour passer des degrés aux radians, c'est (d / 360) * 2 * pi, ou d * pi / 180.


9

x rads en degrés -> x * 180 / pi
x degrés en rads -> x * pi / 180

Je suppose que si vous vouliez créer une fonction pour cela [en PHP]:

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

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

    return $result;
  }

Oui, cela pourrait probablement être mieux écrit.


4

En javascript, vous pouvez le faire de cette façon

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

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

1

Cela fonctionne assez bien pour moi :)

// deg2rad * degrees = radians
#define deg2rad (3.14159265/180.0)
// rad2deg * radians = degrees
#define rad2deg (180/3.14159265)



0

360 degrés = 2 * pi radians

Cela signifie deg2rad (x) = x * pi / 180 et rad2deg (x) = 180x / pi;


0

pi Radians = 180 degrés

Donc 1 degré = pi / 180 radians

ou 1 radian = 180 / pi degrés


0

Pour double en c #, cela peut être utile:

        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;
        }

0

Voici un code qui étend Object avec rad(deg), deg(rad)ainsi que deux fonctions plus utiles: getAngle(point1,point2)et getDistance(point1,point2)où un point doit avoir une propriété xand 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));

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.