How to convert radians to degrees?
Mostrar comentarios más antiguos
Hi, I have this code,
clear all, close all, clc,
r = 0.08;
t = 2;
for n = 1:180,
M(1,n) = r*cos(t); %x length from center
M(2,n) = r*sin(t); %y length from center
t = t+2;
end
It is meant to find the x,y distance from the center of a circle with fixed radius (Basically calculating x,y coordinates of circumference).
However the coordinates are coming wrong and it is because Matlab is performing calculations in radians rather than in degrees. (I cross checked the values with calculator) And I don't know how to convert to radians, and none of the forum results made sense to me.
Thanks, Rohan
Respuestas (3)
There is a built in function for that:
doc deg2rad
But it is rather trivial to implement it yourself:
myTrans = @(x) x./360.*(2.*pi());
myTrans(180)
ans =
3.1416
6 comentarios
James Tursa
el 21 de Mayo de 2013
To avoid two scalar * vector multiplies, group the constant scalars:
x * (180/pi()); % rad --> deg
x * (pi()/180); % deg --> rad
José-Luis
el 21 de Mayo de 2013
Thanks. I was just trying to make the formula explicit though.
Rohan Repale
el 21 de Mayo de 2013
James Tursa
el 21 de Mayo de 2013
No, you did not have to use sind and cosd. They work, but the many other suggestions on this thread using sin and cos correctly also work.
Rohan Repale
el 21 de Mayo de 2013
Ivan-V-Timofeev
el 4 de Nov. de 2014
deg2rad
It does not work without toolbox > geo > private > deg2rad.m http://mooring.ucsd.edu/software/matlab/doc/toolbox/geo/private/deg2rad.html
Iain
el 21 de Mayo de 2013
0 votos
Degrees = 180 * radians / pi.
Rearrange as needed ;)
6 comentarios
James Tursa
el 21 de Mayo de 2013
To avoid two scalar * vector multiplies, group the constant scalars:
Degrees = radians * (180 / pi);
Rohan Repale
el 21 de Mayo de 2013
Iain
el 21 de Mayo de 2013
Put the conversion in the right place(s)?
Rohan Repale
el 21 de Mayo de 2013
Iain
el 21 de Mayo de 2013
Radians = degrees * (pi/180)
"t" is in degrees, and you want it in radians when put into cos and sin.
cos(t * (pi/180)) and sin(t * (pi/180)) is the conversion rearranged as needed, AND put in the right place...
José-Luis
el 21 de Mayo de 2013
Doesn't seem to work... How? Please show what you mean.
per isakson
el 21 de Mayo de 2013
0 votos
Categorías
Más información sobre Lengths and Angles en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!