How to make negative degree numbers positive while maintaining degree.
21 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Kristin Aldridge
el 21 de Oct. de 2021
Editada: Walter Roberson
el 22 de Oct. de 2021
I'm trying to use
if avg_deg < 0, avg_deg = avg_deg+360; end
but it isn't working. I don't want to use abs because I want to rotate these negative degrees to their positive counterpart, but the line of code isn't doing anything at all.
0 comentarios
Respuesta aceptada
Walter Roberson
el 21 de Oct. de 2021
You can use logical indexing....
avg_deg = randi([-719 719], 1, 10)
mask = avg_deg < 0;
new_deg_version_1 = avg_deg;
new_deg_version_1(mask) = new_deg_version_1(mask) + 360
But I would suggest that mod() is more reliable, since it can handle angles < -360 and angles >= 360
new_deg_version_2 = mod(avg_deg, 360)
2 comentarios
Walter Roberson
el 22 de Oct. de 2021
Editada: Walter Roberson
el 22 de Oct. de 2021
avg_deg = [randi([-719 719], 1, 5), -720, -360, 0, 360, 720]
new_deg_version_2 = mod(avg_deg, 360)
new_deg_version_3 = wrapTo360(avg_deg)
They differ on the treatment of positive multiples of 360.
Más respuestas (0)
Ver también
Categorías
Más información sobre MATLAB Compiler SDK en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!