作者makuebx (泰勞)
看板C_and_CPP
標題[問題] sin/cos 數學公式
時間Thu Sep 11 22:14:01 2014
我有一個點座標 P(x,y) 想旋轉X角度 形成一個新座標 P'(x',y')
我查過數學公式,
x' = cosx + siny
y' = cosy - sinx
假設目前我算出 我要旋轉的角度 theta = 60;
而順時針轉和逆時針轉的差別在於前者為-60後者為60
Point2f p';
float Cos = abs(cos(-theta));
float Sin = abs(sin(-theta));
p'.x = Cos * x + Sin * y;
p'.y = Cos * y - Sin * x;
不論算出來的 sin / cos 有沒有取絕對值
我算出來新的座標都是錯的....
請問 我錯的是 數學 還是 程式用法 還請幫忙 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.82.69.216
※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1410444845.A.2F7.html
→ loveme00835: 弧度 09/11 22:20
推 rebaudiana: 參數要用(60/360)*2*pi 09/11 22:21
→ azureblaze: 為何要取abs? 09/11 22:43
→ MOONRAKER: 原來可以用 ' 當變數名字嗎? 09/11 22:45
→ makuebx: ' 我只是呼應最上面的假設 當然不能這樣命名 09/11 22:53
→ suhorng: Haskell 變數名可以用 ' 結尾 (逃) 09/11 22:55
→ MOONRAKER: 你的C code可以和「假設」混在一起你儂我儂? 09/11 23:39
推 johnpage: 函數參數錯誤 09/12 06:28
→ CumCumCum: 1f正解 09/12 20:17