【问题标题】:How to check intersection in libgdx? [closed]如何检查libgdx中的交叉点? [关闭]
【发布时间】:2014-06-09 11:16:28
【问题描述】:

我有两个带有两个纹理的精灵。如何检查它们是否相交? 我正在使用 libgdx 0.9.8。

【问题讨论】:

  • 任何代码 sn-p 请...
  • 我真的很想知道为什么人们经常将问题标记为离题,只是因为他们不理解问题。这里需要的唯一信息是图书馆,而且它甚至标记正确。
  • 它毫无意义的@noone 版主不会听我们的

标签: java android libgdx


【解决方案1】:
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
}

【讨论】:

  • 只是给出一个粗略的想法,因为我不知道你的代码
  • 我想知道任何可用于动画的此类方法。
【解决方案2】:

Intersector 通常有很多方法可以检查重叠和交叉。不仅有矩形的方法,还有圆、点、多边形等。

在您的情况下,您可以使用以下内容:

Rectangle boundingRect1 = sprite1.getBoundingRectangle();
Rectangle boundingRect2 = sprite2.getBoundingRectangle();

if (Intersector.overlaps(boundingRect1, boundingRect2)) {
    ...
}

【讨论】:

  • 谢谢,我会试试的。
  • @noone 当矩形本身有边界和重叠时,我从来没有真正觉得将 Intersector 用于矩形。但是对于多项式来说,它可以挽救生命。
  • 是的,这是一个品味问题。如果你有其他形状,那么无论如何你都需要相交,所以当你有矩形时也可以使用。
猜你喜欢
  • 2012-10-08
  • 1970-01-01
  • 1970-01-01
  • 2021-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-12
  • 1970-01-01
相关资源
最近更新 更多