java - java(Android)中2行的碰撞检测

标签 java android collision-detection lines

很简单的问题。 如何用 Java 绘制的线实现碰撞检测?只是线条。没有矩形、圆形或图像、位图..只有线条。

顺便说一下,这些线不是直的。它们由数百条非常小的线组成,代表玩家的移动(他们移动时的 gps 坐标),因此随着玩家移动,它们到处都是。所有的线都连接起来了。一条线的终点是下一条线的起点,依此类推。在这方面,这是一条不间断的路线。没有间隙。

我尝试将直线起点的 x,y 值存储在一个数组中,然后遍历此数组以确定之前是否访问过该点。如果玩家再次访问确切的坐标,这很好,但如果他位于这些记录点之间的中间位置怎么办?

如果有帮助,这就是问题的背景。但主要问题是我在这里的重点。 Java如何实现线的碰撞检测?

最佳答案

据我所知,您的做法是正确的。我建议可能通过坐标位置对行进行散列处理,这样行检查就更少了。如果制作了一条估计的较大直线(由较小直线的平均值组成)并用于检查,您还可以减少检查次数。

关于java - java(Android)中2行的碰撞检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5977791/

相关文章:

Redis 高效存储数据(哈希)

java - 为什么UTF-8 BOM字节efbbbf可以换成\ufeff?

java - eclipse插件如何通过代码在IDE中打开文件

android - 我无法在 CoordinatorLayout 中隐藏工具栏

java - 异步任务,关闭alertdialog后进度对话框不会消失

java - 检查许多导弹和敌人之间的交叉点?

java - 需要一种以编程方式检查 Windows 服务状态的方法

java - java中如何使用varargs作为Constructor.getConstructor()的参数

android - 如何在应用程序退出时显示 admob 插页式广告

objective-c - Cocoa iOS 通过碰撞将矩形变成圆形