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() 方法,你可以猜到它检查两条线是否有一个或多个共同点,返回错误的结果。
我在蛇类游戏中使用它,这个方法应该检查这个“蛇路径”的第一个和第二个点之间的线是否相交与蛇组成的其他线之一。
参数为: Vector2 first Point of first line;Vector2 第一行的第二个点;Vector2 第二行的第一个点;Vector2 第二行的第二个点;将设置为相交点的 Vector2。
对于不熟悉GDX的朋友来说,它是一个java跨平台开发的框架,大部分方法都是openGL ES方法的实现。下面是 Intersector 类的 api 参考:http: //libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/math/Intersector.html