假設我在fabricjs畫布中有一個圖像。我可以根據圖像的top
& left
值及其大小輕鬆計算角點的座標。在fabricjs中查找旋轉物體角點的座標
如何在圖像旋轉到任何程度時這樣做?
實施例:
編輯:優選地在不使用三角學的,如果在fabricjs本身或其它地方實現的簡單的方法。
假設我在fabricjs畫布中有一個圖像。我可以根據圖像的top
& left
值及其大小輕鬆計算角點的座標。在fabricjs中查找旋轉物體角點的座標
如何在圖像旋轉到任何程度時這樣做?
實施例:
編輯:優選地在不使用三角學的,如果在fabricjs本身或其它地方實現的簡單的方法。
是的,當然。
我們存儲在這些座標對象的oCoords
oCoords.tl.x, oCoords.tl.y // top left corner
oCoords.tr.x, oCoords.tr.y // top right corner
oCoords.bl.x, oCoords.bl.y // bottom left corner
oCoords.br.x, oCoords.br.y // bottom right corner
這就是被設置,當你調用setCoords
方法。
但你可能不想混淆那些。
從版本〜1.0.4開始,我們對所有對象都有getBoundingRect
方法,它返回{ left: ..., top: ..., width: ..., height: ... }
。我們已經在getBoundingRectWidth
和getBoundingRectHeight
之前(現已棄用),但getBoundingRect
肯定更有用;它也允許讀取左/頂值。
您可以在http://fabricjs.com/bounding-rectangle/看到它在行動(嘗試旋轉對象)
計算起點,然後用一個矩陣來計算,他們是基於旋轉> http://en.wikipedia.org/ wiki/Rotation_(數學) – BenM 2013-02-14 12:17:03
謝謝 - 請參閱我的編輯。 – seldary 2013-02-14 12:20:57
你將不得不使用trigonomics。沒有內置的方法。 – BenM 2013-02-14 12:29:29