PC端页面中随机移动的球和一个固定的球,怎样判断触碰固定球之后随机移动的球停止,使用JS代码实现
PC端页面中随机移动的球和一个固定的球,怎样判断触碰固定球之后随机移动的球停止,使用JS代码实现...
PC端页面中随机移动的球和一个固定的球,怎样判断触碰固定球之后随机移动的球停止,使用JS代码实现
展开
1个回答
展开全部
这实际上就是计算两个圆的圆心距离如果等于两个圆的半径之和,就说明两个圆是处在接触状态的。
具体到程序中,由于涉及浮点运算,为了防止误差,应该以圆心距离小于等于半径和就视为触碰。
所以问题就简化为计算平面中两点之间直线距离了,这是初中的数学了:
假定移动球的圆心坐标是(x1, y1),半径为r1,固定球的圆心坐标为(x2, y2),半径为r2,则圆心距离d为
var d = Math.sqrt(Math.pow(x1-x2, 2) + Math.pow(y1-y2, 2));
if(d<=r1+r2){
//两球触碰
}else{
//两球未触碰
}
具体到程序中,由于涉及浮点运算,为了防止误差,应该以圆心距离小于等于半径和就视为触碰。
所以问题就简化为计算平面中两点之间直线距离了,这是初中的数学了:
假定移动球的圆心坐标是(x1, y1),半径为r1,固定球的圆心坐标为(x2, y2),半径为r2,则圆心距离d为
var d = Math.sqrt(Math.pow(x1-x2, 2) + Math.pow(y1-y2, 2));
if(d<=r1+r2){
//两球触碰
}else{
//两球未触碰
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询