当前位置: 代码迷 >> C语言 >> C语言求夹角解决方案
  详细解决方案

C语言求夹角解决方案

热度:4374   发布时间:2013-02-26 00:00:00.0
C语言求夹角
如何用C语言实现求坐标轴中2条相交直线的夹角

------解决方案--------------------------------------------------------
这个更像是个数学问题,知道了斜率,求夹角
tanθ=(k2-k1)/(1+k1·k2)
θ=arctan((k2-k1)/(1+k1·k2))
<math.h>里肯定有封装好的arctan函数
------解决方案--------------------------------------------------------
引用:
这个更像是个数学问题,知道了斜率,求夹角
tanθ=(k2-k1)/(1+k1·k2)
θ=arctan((k2-k1)/(1+k1·k2))
<math.h>里肯定有封装好的arctan函数

这个就是数学问题。

------解决方案--------------------------------------------------------
数学上的一些东西,感觉还是用matlab会简单点,想学习C和matlab的混合编程,一直没有成功。。。
------解决方案--------------------------------------------------------
已知三点求夹角:
//p1 is start point ,p2 is middle point,and end point is p3
double CalculateVectorAngle(TPoint p1, TPoint p2, TPoint p3)
{  
//vector1
double xV1 = p2.m_dX-p1.m_dX;
double yV1 =p2.m_dY - p1.m_dY; 
//vector2
double xV2 = p3.m_dX - p2.m_dX;
double yV2 = p3.m_dY - p2.m_dY;
if ((0==xV1 && 0 ==yV1) 
------解决方案--------------------------------------------------------
 (0 == xV2 && 0 == yV2))
return 0;
else
return acos((xV1*xV2 + yV1*yV2) / sqrt((xV1*xV1 + yV1*yV1)*(xV2*xV2 + yV2*yV2))) *180 /PI;
}
------解决方案--------------------------------------------------------
你两条直线是用什么描述/定义的?
基本上带入公式即可。
  相关解决方案