计算两个点之间的夹角


#include <QtCore/QPoint>

#define PI 3.1425926.f

/// 计算平面上两个点之间的夹角
/// Param cen 中心参考点
/// Param first 第一坐标点
/// Param second 第二坐标点

double calcAngle(QPoint cen, QPoint first, QPoint second)
{
    double pa_x = first.x() - cen.x();
    double pa_y = first.y() - cen.y();
    double pb_x = second.x() - cen.x();
    double pb_y = second.y() - cen.y();
    double v1 = (pa_x * pb_x) + (pa_y * pb_y);
    double pa_val = sqrt(pa_x * pa_x + pa_y * pa_y);
    double pb_val = sqrt(pb_x * pb_x + pb_y * pb_y);
    double cosAgl = v1 / (pa_val * pb_val);
    double angle = acos(cosAgl) * 180 / PI;

    return angle ;
}

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM