atan2(doubley,doublex)返回的是原点至点(x,y)与x轴的夹角。返回值的单位为弧度,取值范围为(-π,π]。
问题:C语言原来的atan2 只能求解-PI-PI;
// 求解矢量的夹角;
// 平面坐标系原点O到该点P(x, y)矢量OP, 所求即是+X(1, 0) 轴与OP(x, y) 矢量的夹角;
float Actan_0_2PI(float y, float x)
{
float fRad = atan2( y, x);
if (y < 0.0)
{
fRad = (float)2*PI + fRad;
}
return fRad;
}