Я должен сделать код, который начинается с круга на холсте , пользователь может нарисовать его и сравнить точки правильного круга с тем, который пользователь нарисовал сверху.Таким образом, определяя процент неудач или успехов, который был у пользователя.
Так я сохраняю координаты правильного круга.
var centerX=200;
var centerY=200;
var radius=70;
// array save circlePoints
var points=[];
for(var degree=0;degree<360;degree++){
var radians = degree * Math.PI/180;
var x = centerX + radius * Math.cos(radians);
var y = centerY + radius * Math.sin(radians);
points.push({x:x,y:y});
}
Этокак пользователь может рисовать на холсте, и я сохраняю эти координаты:
function findxy(res, e) {
if (res == 'down') {
prevX = currX;
prevY = currY;
currX = e.clientX - canvas.offsetLeft;
currY = e.clientY - canvas.offsetTop;
arrayCoordenadas.push({currX:currX,currY:currY});
flag = true;
dot_flag = true;
if (dot_flag) {
ctx.beginPath();
ctx.fillStyle = x;
ctx.fillRect(currX, currY, 2, 2);
ctx.closePath();
dot_flag = false;
}
}
if (res == 'up' || res == "out") {
flag = false;
}
if (res == 'move') {
if (flag) {
prevX = currX;
prevY = currY;
currX = e.clientX - canvas.offsetLeft;
currY = e.clientY - canvas.offsetTop;
arrayCoordenadas.push({currX:currX,currY:currY});
draw();
}
}
}
Я не знаю, правильный ли способ сохранения координат при рисовании, и не знаю, каксравнить оба массива.