@Afafks123132132165

Че не так с кодом?

Не отцепляется от первой точки хотя циклом прохожу.
<!DOCTYPE html>
<html>
<head>
  <title>Game</title>
</head>
<body>
<canvas id = "canvas" width = "320" height = "320"></canvas>
<style type="text/css">
  #canvas{
    border:1px solid black;
  }
</style>
<script type="text/javascript">
document.getElementById("canvas");
var ctx = canvas.getContext("2d");

var x = 0,y = 0,hx = 0,hy = 0,plus1 = 1000000000,plus2 = 0;
n = [];

n.push({x:0,y:0});
n.push({x:100,y:100});

document.addEventListener("mousemove",function(e){
 x = e.pageX;
 y = e.pageY;
});
function game(){
  ctx.clearRect(0,0,320,320);
  for(i in n){
    ctx.fillStyle = "black";
    ctx.fillRect(n[i].x,n[i].y,10,10);
    for(j = 0;j < n.length;j++){
        plus2 = Math.sqrt(Math.pow(n[j].x - x)+Math.pow(n[j].y - y));
        if(plus2 < plus1){
          plus1 = plus2;
          hx = n[j].x;
          hy = n[j].y;
      }
    }
    ctx.strokeStyle = "red";
    ctx.beginPath();
    ctx.moveTo(x,y);
    ctx.lineTo(hx,hy);
    ctx.stroke();
    ctx.closePath();
  }
}

setInterval(game,20);
</script>
</body>
</html>
  • Вопрос задан
  • 163 просмотра
Пригласить эксперта
Ответы на вопрос 1
twobomb
@twobomb
Можете словами объяснить что должно происходить? Ну хорошо, побуду экстрасенсом и предположу что линия от мыши должна рисоваться до ближайшего блока, тогда это так. Если не так то как?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы