Rotating polar coordinates 180 degrees

12 visualizaciones (últimos 30 días)
Right Grievous
Right Grievous el 1 de Feb. de 2015
Respondida: David Young el 1 de Feb. de 2015
Hi all,
I have a series of polar coordinates (ranging from -180 - 180 degrees), some of these coordinates are reflected in the wrong direction (by 180 degrees) due to a sampling issue. I need to rotate these back to their correct angle but I'm not sure what the correct mathematical process is, i.e. I can't just add 180 degrees because then some values might come out greater than 180.
Any help would be fabulous!

Respuestas (2)

Star Strider
Star Strider el 1 de Feb. de 2015
I don’t completely understand the problem, but when you say ‘reflected’, wouldn’t simply negating the angles do what you want?
theta_refl = [-180:10:180]; % ‘Reflected’ Angles
theta_true = -theta_refl; % ‘True’ Angles

David Young
David Young el 1 de Feb. de 2015
If you want to ensure that all angles are in the range -180 to 180, you can do this:
theta_true = mod(theta_refl, 360) - 180;
which adds 180 to the angles, reversing their direction, then subtracts 360 from any that are over 180 so that they are in the required numerical range.


Más información sobre Polar Plots en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by