旋轉矩形邊框大小
回答
您通常應該考慮在碰撞檢測引擎中旋轉矩形,因爲它的實現非常簡單(我的意思是將旋轉的矩形視爲原樣)。
在任何情況下,如果你真的想簡化到具有粗糙級別的碰撞檢測,最好的辦法是將矩形嵌入圓內,因爲它非常簡單(以矩形中心爲中心,半徑爲半矩形的對角線)並且與使用盒子進行比較,對於粗略檢測可以是相當準確的。其實你可以有一個角度閾值來決定是否最好使用圓或考慮原始矩形(大多數退化情況是當角度接近k*PI
與k = 0,1,2,3
如果你真的真的想要考慮旋轉的矩形,你可以通過選擇矩形(xT, yT)
的最頂點和最左邊的(xL, yL)
(當然是旋轉後)來獲得將是(xL, yT)
的最小點。然後你對從你矩形的最右邊和最低點開始,你需要(xR, yB)
,它將是包含在(xL, yY) (xR, yB)
中的矩形
感謝您的有益建議! – Markus 2010-10-24 13:34:34
這可能是你所需要的:
Calculate Bounding box coordinates from a rotated rectangle,由一個叫馬庫斯回答。
我剛剛添加了以下評論馬庫斯的答案:實際上,由於對稱性,你只需要轉換2個角落,如果你再多加一點思考,它只是一個轉角。 – ysap 2010-10-25 12:18:55
- 1. 計算旋轉矩形大小從已知的邊界框座標
- 2. 將旋轉矩形分割成更小的矩形,如何旋轉它們以保持原來的大矩形?
- 3. 旋轉矩形?
- 4. 查找旋轉矩形的邊角
- 5. 將旋轉的矩形逐漸旋轉到最大旋轉點
- 6. 計算最小矩形的大小,以覆蓋畫布旋轉
- 7. 用畫布上的旋轉矩陣旋轉等邊三角形
- 8. cgcontext旋轉矩形
- 9. 旋轉矩形 - C#
- 10. 規模旋轉外接矩形框
- 11. 矩形旋轉和翻轉
- 12. 畫布像矩形輪旋轉矩形
- 13. 矩形邊框Java
- 14. Raphael矩形邊框
- 15. 如何在paperjs中拖動/調整大小和旋轉矩形?
- 16. Android Opencv計算矩形內旋轉圖像的大小
- 17. 可調整大小和可旋轉的矩形D3?
- 18. 如何旋轉矩形而不更改其大小和位置?
- 19. uilabel邊框在旋轉後會變形
- 20. 爲什麼矩形邊框在pygame中的大小不一樣?
- 21. Libgdx - 的最小值和最大值一個旋轉邊界框
- 22. 旋轉邊框不會更改窗口大小
- 23. 繪製旋轉的矩形
- 24. 2D旋轉矩形碰撞
- 25. 旋轉Java Graphics2D矩形?
- 26. 旋轉一個矩形
- 27. 旋轉矩形碰撞
- 28. 如何旋轉矩形?
- 29. C++/OpenGL - 旋轉矩形
- 30. 約計與旋轉矩形
我知道有一種方法會是旋轉矩形的所有角點並使用它們,但我認爲可能會有更好的一個。 – Markus 2010-10-24 13:22:34
而@mojuba:如果你(或者任何一個對你的評論滿意的人)知道答案,如果你可以發佈它,這將是非常好的... – Markus 2010-10-24 13:26:02
可能的重複[Calculate Bounding box coordinates from a rotating rectangle ,圖片裏面。](http://stackoverflow.com/questions/622140/calculate-bounding-box-coordinates-from-a-rotated-rectangle-picture-inside) – 2010-10-24 22:05:28