如何獲得4個點圍繞指針旋轉一定角度以形成矩形?我可以圍繞某個點旋轉一個點,但是我無法將其偏移以製作一個不失真的矩形。圍繞某個點旋轉矩形
回答
如果你可以圍繞一個點旋轉一個點,那麼它應該很容易旋轉一個矩形 - 你只需旋轉4個點。
這裏是一個js函數繞原點旋轉角度:
function rotate_point(pointX, pointY, originX, originY, angle) {
angle = angle * Math.PI/180.0;
return {
x: Math.cos(angle) * (pointX-originX) - Math.sin(angle) * (pointY-originY) + originX,
y: Math.sin(angle) * (pointX-originX) + Math.cos(angle) * (pointY-originY) + originY
};
}
然後你就可以做到這一點到每個點。 下面是一個例子:http://jsfiddle.net/dahousecat/4TtvU/
改變角度和命中運行看結果...
你能解釋一下嗎? jsfiddle.net/bjhc34xk/7這是否與PI的逼近有關,或者浮點數學錯誤? – 2015-04-04 23:52:09
分叉費利克斯的小提琴包括一個動態輸入的滑塊,使其更容易實驗 - https://jsfiddle.net/brichins/0ccdd362/ – brichins 2016-07-15 18:05:12
@MaxMastalerz我相信你現在從這一點上移動,但你的小提琴可能是不在做你的想法。在計算過程中,您正在更改端點的X座標,然後從該偏移點而不是中心旋轉Y座標。在一個很酷的黃金螺旋結果,但我認爲你的意思是做到這一點:https://jsfiddle.net/brichins/w2rxsbt4/ – brichins 2016-07-15 18:15:08
- 1. 旋轉矩形圍繞SVG
- 2. 圍繞某個軸的點的旋轉
- 3. 旋轉矩形圍繞其左上角
- 4. java的旋轉矩形圍繞中心
- 5. 旋轉矩形圍繞柔性軸
- 6. 圍繞一個點旋轉
- 7. 圍繞點旋轉
- 8. 圍繞原點旋轉三角形
- 9. Three.js - 圍繞某個軸旋轉球體
- 10. 圍繞另一點旋轉一個點
- 11. 圍繞點xna旋轉2D
- 12. 僅圍繞一個軸旋轉節點
- 13. 圍繞一箇中心點旋轉CGPoint
- 14. 圍繞一個點旋轉Vector2
- 15. 圍繞原點旋轉整個SKView
- 16. 圍繞一個點旋轉div
- 17. UIimageView圍繞一個點旋轉
- 18. 圍繞點旋轉變成螺旋
- 19. 圍繞某個點旋轉物體Box2D Cocos2d
- 20. 圍繞網格旋轉矩形來計算玩家視圖
- 21. 旋轉矩形的點
- 22. 旋轉矩形內的幾個點
- 23. 圍繞點的連續物體旋轉
- 24. 圍繞中心點旋轉身體
- 25. Rajawali 3D:圍繞樞軸點旋轉
- 26. 圍繞樞軸點旋轉圖像
- 27. 圍繞特定點旋轉graphics2d
- 28. 圍繞旋轉點放置對象
- 29. Android - 圍繞中心點旋轉圖像?
- 30. 圍繞原點的3d旋轉
你試過做這麼遠嗎?一些代碼?謝謝 – Trufa 2010-12-16 22:26:40
翻譯你的四點,以便你將指針作爲中心,通過標準旋轉矩陣方法進行旋轉,然後將點轉回。 [說明](http://www.euclideanspace.com/maths/geometry/affine/aroundPoint/index.htm) – Michal 2010-12-16 23:45:03
如果我明白我會用它,但我需要一個簡單的英文或最好是JavaScript的解決方案。 – Anonymous 2010-12-17 08:03:58