【发布时间】:2014-06-09 11:16:28
【问题描述】:
我有两个带有两个纹理的精灵。如何检查它们是否相交? 我正在使用 libgdx 0.9.8。
【问题讨论】:
-
任何代码 sn-p 请...
-
我真的很想知道为什么人们经常将问题标记为离题,只是因为他们不理解问题。这里需要的唯一信息是图书馆,而且它甚至标记正确。
-
它毫无意义的@noone 版主不会听我们的
我有两个带有两个纹理的精灵。如何检查它们是否相交? 我正在使用 libgdx 0.9.8。
【问题讨论】:
if (sprite1.getBoundingRectangle().contains(Sprite2.getBoundingRectangle())
{
//gives true when sprite2 one is completly inside sprite1
}
还有
if(sprite1.getBoundingRectangle().overlaps(Sprite2.getBoundingRectangle())
{
// gives true when sprite 2 intersects sprite1
}
【讨论】:
Intersector 通常有很多方法可以检查重叠和交叉。不仅有矩形的方法,还有圆、点、多边形等。
在您的情况下,您可以使用以下内容:
Rectangle boundingRect1 = sprite1.getBoundingRectangle();
Rectangle boundingRect2 = sprite2.getBoundingRectangle();
if (Intersector.overlaps(boundingRect1, boundingRect2)) {
...
}
【讨论】: