Determing "turning angle" of 3 points on a matrix
1 次查看(过去 30 天)
显示 更早的评论
I am simulating movement of a bot on a matrix and keep track of its x and y coordinates. For every current position, I need to calculate the "turning angle" between the bot's current position and every possible new position (x,y coordinate) on the matrix that it can "move" to. I have attached a figure depicting what a turning angle is, but basically, it is the angle formed between the direction of the current movement and the new position. Let's say the red dot is (x1,y1), the blue dot is the current position (x2,y2), and the yellow dot is the potential new position (x3,y3). How can I determine this angle? I would need to find the angle for all possible new positions, but I can probably figure it out if I know how to do it for one.
0 个评论
回答(1 个)
KSSV
2018-11-9
Use dot product.
theta = acos(dot(a,b)/(norm(a)*norm(b)) ;
where a and b are you position vectors.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 General Applications 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!