C++中cos,sin,asin,acos这些三角函数操作


C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度,
你需要把角度转化为弧度.

弧度=角度*Pi/180;

例子1:
比如对边和邻边分别为a,b 
设角度为x,则 
x=atan(a/b); 
其中x为弧度制 
如需转换为角度值,则x*180/3.1415


例子2:
//计算旋转角度   {弧度=角度*Pi/180} {两点间距离公式 根号下(|X1-X2|的平方+|Y1-Y2|的平方)}
   double angle_tanValue=sqrt(pow(point.x-point.x,2)+pow(point.y-Right_Top_Point.y,2))/
    sqrt(pow(Turn_Point_L[1].x-point.x,2)+pow(Turn_Point_L[1].y-Right_Top_Point.y,2));
   //求出tan 与 sin 的弧度
   double angle_atanValue=atan(angle_tanValue);
   double angle_sinValue=sin(angle_atanValue);
   //弧度转换成角度
   double angle=angle_atanValue*180/3.1415;
   //取绝对值
   angle=fabs(angle);

http://blog.sina.com.cn/s/blog_63578f140100zfps.html

你可能感兴趣的:(C++基本工具)