atand and atan2d
39 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Corey Magaldino
el 13 de Nov. de 2018
Comentada: Star Strider
el 13 de Nov. de 2018
I have some motion capture data and I have calculated the vertical angles that participants used when wielding an object (atand(y/x)).
The issue is that if they exceed 90 degrees, atand freaks out.
I want to convert to atan2d to avoid this issue.
The red line is atand and the blue line is atan2d.
red = atand(y/x)
blue = atan2d(y,x)
Not sure how to handle these values. The output from atand are the correct angle participants used, how can I get atan2d to output the correct angles, but also capture values outside of the -90:90 degree limit of atand.
0 comentarios
Respuesta aceptada
Star Strider
el 13 de Nov. de 2018
I am not certain what result you want.
Try these utility functions I created for my own use a while ago:
Angles360 = @(a) rem(360+a, 360); % For ‘atan2d’
Angles360a = @(a) rem(180+a, 540); % Maps: [-180,180] —> [0,360]
Result1 = Angles360([-150 180])
Result2 = Angles360a([-150 180])
2 comentarios
Star Strider
el 13 de Nov. de 2018
My pleasure.
The unwrap function is intended to provide continuityfor (typically phase) angles that would otherwise repeat on modulo pi or 180°. My functions map one continuous angle to [0,360], and do not unwrap them.
If my Answer helped you solve your problem, please Accept it!
Please do not close Questions that have Answers.
Más respuestas (1)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!