Rotating polar coordinates 180 degrees

8 次查看(过去 30 天)
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!
Rod.

回答(2 个)

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

David Young
David Young 2015-2-1
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.

类别

Help CenterFile Exchange 中查找有关 Polar Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by