How to make negative degree numbers positive while maintaining degree.
35 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Kristin Aldridge
il 21 Ott 2021
Modificato: Walter Roberson
il 22 Ott 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 Commenti
Risposta accettata
Walter Roberson
il 21 Ott 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 Commenti
Walter Roberson
il 22 Ott 2021
Modificato: Walter Roberson
il 22 Ott 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.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su MATLAB Compiler SDK in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!