关于matlab实现平面中三点组成两个向量的夹角问题

2019-07-17 12:44发布

微信图片_20181211170244.jpg
平面坐标系中存在三点A(xa,ya)、B(xb,yb)、C(xc,yc),由这三点构成的两个向量CA、CB,如何用matlab实现求CA与CB的夹角(C的角)。

我写了一个程序,用的方法主要是求出cos值,然后用acos函数反求角度。可是运行出来的结果总是不对的,尝试还了x、y的位置还是不对,实在找不到是什么原因了,求大神指点。
clc;
clear;
A=input('请按位置依次输入坐标xa(A1)、ya(A2)、xb(A3)、yb(A4)、xcA5)、yc(A6):');
b=((A(1)-A(5))*(A(3)-A(5))+(A(2)-A(6))*(A(4)-A(6)));
c=sqrt((A(1)-A(5))^2+(A(4)-A(6))^2)*sqrt((A(1)-A(5))^2+(A(2)-A(6))^2);
CosO=b/c;
O=acos(CosO); %数值表示度
O1=O*180/pi;
disp('O1是所求角度')

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
wanglq2011
1楼-- · 2019-07-17 15:27
你这样会不会太麻烦了点
wanglq2011
2楼-- · 2019-07-17 18:14
 精彩回答 2  元偷偷看……
莫负好春光
3楼-- · 2019-07-17 21:08
解决了,matlab中存储方式为列优先

一周热门 更多>