我開發了一個HTML5 Canvas應用程序,它涉及到讀取一個xml文件,該文件描述了需要在畫布上繪製的箭頭,直形和其他形狀的位置。的XML佈局的HTML5畫布:旋轉時計算x,y點
實施例:
<arrow left="10" top="20" width="100" height="200" rotation="-40" background-color="red"/>
<rect left="10" top="20" width="100" height="200" rotation="300" background-color="red"/>
如果對象被旋轉它涉及計算一個點的位置(稱爲P的物體的旋轉後的新的位置)時圍繞另一點(向左旋轉,最佳)。我試圖想出一個通用函數/公式我可以用它來計算這個點P但我的數學有點弱&我無法確定我打算使用什麼弧/切線公式。
你能幫我想出一個公式,我可以用它來計算點P的旋轉,可以是正數&負數?
在上面的例子:點(14446)是左,頂部點&點(226496)是對象的中間點時不轉動,從而在點=(左+寬度/ 2 ,頂部+高度/ 2),藍點是旋轉時的中點。我知道如何計算點(14,446)&(226,496)之間的線長度,但不知道如何計算藍色點x,y位置 - BTW:該線的長度與藍色點&之間的線相同(14,446)
len = sqrt((496-446)^2 + (226-14)^2);
= 227.56;
有應該提到當你處理反正切...這將給予同樣的角度時(X,Y)的一件事是在我或III象限, (x,y)在II或IV象限中。角度的正確值應根據x和y的符號來選擇。 – Cheery 2012-01-28 06:53:25