加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度(转)

(2011-12-21 14:22:38)
标签:

杂谈

分类: 编程基础知识

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);

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有