Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android二维圆弧碰撞检测_Android_Collision Detection_Curve_Geometric Arc - Fatal编程技术网

android二维圆弧碰撞检测

android二维圆弧碰撞检测,android,collision-detection,curve,geometric-arc,Android,Collision Detection,Curve,Geometric Arc,我有一个使用android 2d图形绘制的旋转弧 c.drawArc(new RectF(50, 50, 250, 250), 30, 270, true, paint); 当游戏运行时,弧将旋转 我想知道如何检测是否有任何其他游戏对象(矩形、圆形)与之碰撞 这是我第一次写游戏:) 我在电视上看到了类似的东西 提前感谢圆弧碰撞比普通碰撞稍微困难一些,但使用布尔代数,您可以轻松检查给定点是否在圆弧内 请看下面的图片 这里有3个对象。黑色球体,这是你的弧的可视化,如果有东西与它碰撞,它可能在你的弧

我有一个使用android 2d图形绘制的旋转弧

c.drawArc(new RectF(50, 50, 250, 250), 30, 270, true, paint);
当游戏运行时,弧将旋转

我想知道如何检测是否有任何其他游戏对象(矩形、圆形)与之碰撞

这是我第一次写游戏:)

我在电视上看到了类似的东西


提前感谢

圆弧碰撞比普通碰撞稍微困难一些,但使用布尔代数,您可以轻松检查给定点是否在圆弧内

请看下面的图片

这里有3个对象。黑色球体,这是你的弧的可视化,如果有东西与它碰撞,它可能在你的弧内。黑色球体顶部的红色球体,这显示了弧的“内部”,如果红色球体内部有东西,它肯定不是弧的“内部”。现在还有一个绿色的三角形,它显示了你的弧的“截止线”,绿色三角形内的任何东西也肯定不在你的弧内


测试是否有东西在黑色球体内是很容易的。(物体到球体中心的距离非常感谢,我将尝试在android中实现这一点,并告诉你我会发生什么。在我的例子中,我用矩形代替三角形,因为曲线正好是半圆,这对我来说很好,谢谢你的帮助。这是一个android问题,但在所有语言中概念都是一样的ges。这对我的JS画布很有帮助。+1Ok,哇……非常优雅的解决方案,对于程序员来说,这也是很直观的。我想我会使用它,而不是继续我的研究……相交两个圆,然后检查交点和弧角之间的重叠,即使这也行得通。