我试图在我的javascript游戏中使用距离公式,但是我在使用if括号或if语句中的任何等价物时遇到了麻烦。
距离公式:距离= sqrt(x1-x2)^ 2 +(y1-y2)^ 2
if((sqrt(xOne-xTwo)^2+(yOne-yTwo)^2)>32){
generate();
}
generate(){
xOne = Math.floor((Math.random()*464)+16);
xTwo = Math.floor((Math.random()*464)+16);
yOne = Math.floor((Math.random()*464)+16);
yTwo = Math.floor((Math.random()*464)+16);
{
答案 0 :(得分:1)
在您的代码中,您应该使用Math.sqrt
和Math.pow
:
if (Math.sqrt(Math.pow((xOne - xTwo), 2) + Math.pow((xOne - xTwo), 2)) > 32) {
}
但我可以建议采用更清洁的方法:
var a = x1 - x2
var b = y1 - y2
var c = Math.sqrt( a*a + b*b );