matlab 计算逆时针夹角,求取向量A逆时针到向量B的夹角

该博客介绍了如何在Matlab中使用余弦定理和自定义的向量类来计算两个向量之间的逆时针夹角。通过定义Point类,实现了向量的运算,并提供了计算夹角的函数AngleBetweenPoints。博主还给出了实验代码,包括点积、点到原点的距离和判断夹角是否大于180度的函数。在main函数中,进行了简单的测试。注意实际应用时需要处理向量长度为0的情况。
摘要由CSDN通过智能技术生成

算法思路:通过余弦定理求取向量夹角的cosa,然后判断夹角是否大于180,如果大于,则向量夹角为360-arccosa*180/Pi(单位为°);否则夹角为arccosa*180/Pi。(Pi为常量3.14159265)。实验代码如下:

1、先定义Point头文件(Point.h)

# ifndef POINT_H_

# define POINT_H_

class Point

{

public:

Point()

{

x=0.0;

y=0.0;

}

Point(float inx, float iny)

{

x=inx;

y=iny;

}

//析构函数

~Point(){}

float getX() {return x;}

float getY() {return y;}

//重载=操作符,实现两向量变量的赋值

Point operator =(Point& inPoint)

{

Point temp;

temp.x=inPoint.x;

temp.y=inPoint.y;

return temp;

}

//重载+操作符,实现两向量变量的相加

Point operator+(const Point& inPoint)

{

//返回相加的结果

return Poi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值