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://hi.baidu.com/zouhaoo/item/7c82e23cb482d95b80f1a763

發佈了33 篇原創文章 · 獲贊 9 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章