遇到問題先網上找一找(由於本身已經忘完了……),搜到好幾個以下的答案:
1、引用
假設o點爲圓心(原點0,0),則有計算公式:co
b.x = a.xcos(angle) - a.ysin(angle)
b.y = a.xsin(angle) + a.ycos(angle)
其中順時針旋轉爲正,逆時針旋轉爲負,角度angle是弧度值,如旋轉30度轉換爲弧度爲:angle = pi/180 * 30。
2、
若o不是原點,則可先將a點座標轉換爲相對座標計算,計算結果再加上o點座標。
參與計算的a點座標實際應爲 a - 0,由此得出最終計算公式以下:
b.x = ( a.x - o.x)cos(angle) - (a.y - o.y)sin(angle)
b.y = (a.x - o.x)sin(angle) + (a.y - o.y)cos(angle)
上面的內容是引用其餘朋友的說明,結果坑了我半天,都是沒作實驗的吧,
直接上正解:
前面的步驟都是對的,可是!重點來了!!!!,最終還要加上中心點的座標橫縱座標即:
b.x = ( a.x - o.x)cos(angle) - (a.y - o.y)sin(angle) + o.x
b.y = (a.x - o.x)sin(angle) + (a.y - o.y)cos(angle) + o.y