2011-07-17 134 views
4

我想检测椭圆是否与另一个椭圆和矩形碰撞。我如何做到这一点?如何检测椭圆是否与另一个椭圆/矩形碰撞

我正在用C++编写。我想用它来玩游戏。

+2

这是一个游戏?这很重要:) –

+0

是的,这是一个游戏:) – m4tx

+0

什么是你的椭圆?只是外围或内部区域? – svick

回答

6

如果这是一个游戏,那么正确性不应该是一个问题。 将椭圆视为多边形,即在椭圆上选择N个均匀分布的点,并将其视为多边形。将N调整到所需的正确性水平。

现在您需要测试凸多边形是否与矩形相碰撞。后者也是一个凸多边形。这里有一个链接,convex polygon collision detection

1

如果您需要确切的答案,比你描述你的数字,因为功能和使用Newton's method寻找交叉点