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?
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?
Réponses:
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
Math.PI
constante.
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.
360 degrés correspond à 2 * radians PI
Vous pouvez trouver les formules de conversion sur: http://en.wikipedia.org/wiki/Radian#Conversion_between_radians_and_degrees .
360 degrés = 2 * pi radians
Cela signifie deg2rad (x) = x * pi / 180 et rad2deg (x) = 180x / pi;
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;
}
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é x
and 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));