求两条直线夹角

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mao_hui_fei/article/details/81431874

原理

这里写图片描述

程序源码

/*******************************************************************************************
*函数功能 : 输入两条直线(每条直线以斜率和截距确定),返回两直线夹角,0为弧度,1为角度
*输入参数 : line_1_k为一条直线斜率,line_2_k为另一条直线斜率,aaa为0则为弧度,反之则为角度
*返 回 值 : float型弧度或者角度,有正负,为直线2相对于直线1的角度
*编写时间 : 2018.8.5
*作    者 : 毛哥
********************************************************************************************/
float get_lines_arctan(float line_1_k, float line_2_k, int aaa)
{
    if (aaa == 0)
    {
        float tan_k = 0; //直线夹角正切值
        float lines_arctan;//直线斜率的反正切值
        tan_k = (line_2_k - line_1_k) / (1 + line_2_k*line_1_k); //求直线夹角的公式
        lines_arctan = atan(tan_k);
        return lines_arctan;
    }
    else
    {
        float tan_k = 0; //直线夹角正切值
        float lines_arctan;//直线斜率的反正切值
        tan_k = (line_2_k - line_1_k) / (1 + line_2_k*line_1_k); //求直线夹角的公式
        lines_arctan = atan(tan_k)* 180.0 / 3.1415926;

        return lines_arctan;
    }
}
展开阅读全文

没有更多推荐了,返回首页