作者leemack (leemack)
看板Programming
标题[请益] 求圆周上一点的座标 已知半径 圆心 30度
时间Tue Dec 25 14:03:49 2018
用程式跟高中数学的算法 偶不懂为何 径度还要再减 pi/2
例如 圚心(3,3) 半径10 1点钟方向上的点座标
高中数学
dx=10 x cos (60度) = 5
dy=10 x sin (60度) = 5根号3
点座标 (3+5, 3+5根号3)
程式
#define PI 3.14
#define PI_DIV2 1.57
double fk=5*6*PI/180 - PI_DIV2;
dx=(unsigned short)(rr*cos( fk )) + orx;
dy=(unsigned short)(rr*sin( fk )) + ory;
照常理 应该是
fk= PI_DIV2-5*6*PI/180;
才对啊
先祝大家新年快乐
这儿有一段英文注解但是偶看不憧
// Angles for sin() and cos() start at 3 o'clock;
// subtract HALF_PI to make them start at the top
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.163.150.163
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Programming/M.1545717832.A.3EE.html
1F:推 LPH66: 注解的意思是数学角度从三点钟方向开始 140.112.30.32 12/25 14:12
2F:→ LPH66: 所以减去 PI_DIV2 (π/2) 让它从顶端开始 140.112.30.32 12/25 14:13
3F:→ LPH66: 然後方向问题, 数学是逆时针走 140.112.30.32 12/25 14:14
4F:→ LPH66: 你如果要顺时针走就要像你那样减 140.112.30.32 12/25 14:14
5F:→ MOONRAKER: 这就是没有用cos()/sin()画过圆的结果. 220.135.118.23 12/25 18:53