gpt4 book ai didi

java - libGdx:Intersector.intersectLines(似乎)返回错误结果?

转载 作者:行者123 更新时间:2023-11-30 04:00:16 26 4
gpt4 key购买 nike

if (points.size() >= 3) {
for (int i = 1; i <= points.size() - 1; i++) {
if (Intersector.intersectLines(points.get(0), points.get(1), points.get(i), points.get(i + 1), null)) return true;
}
}
return false;

我无法找到我的错误,所以看起来像 intersecLines() 方法,你可以猜到,它检查两条线是否有一个或多个公共(public)点,返回错误的结果。

我在蛇类游戏中使用这个方法,这个方法应该检查这个“蛇路径”的第一个和第二个点之间的线(它作为一个由点组成的 ArrayList 存在)路径)与蛇所组成的其他线之一相交。

参数为:Vector2 第一行的第一个点; Vector2 第一行的第二个点; Vector2 第二行的第一个点; Vector2 第二条线的第二个点;将设置为交点的 Vector2。

对于那些不熟悉GDX的人来说,它是一个用于java跨平台开发的框架,大部分方法都是openGL ES方法的实现。下面是 Intersector 类的 api 引用:http://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/math/Intersector.html

最佳答案

intersectLines 实际上是 RayRay 碰撞检查,其中射线由一条线上的两个点定义。文档对此不是很清楚。

您可能想使用intersectSegments相反,它适用于线段

关于java - libGdx:Intersector.intersectLines(似乎)返回错误结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22154771/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com