在您发表评论之前,是的,我已经检查了其他问题以及...... 例如this article或this one,甚至this one。但是,我无法找到如何设定原点。所以,让我们说我有一个阵列图片X coords和图片Y coords
(在100 * 100的网格上) x / y 81分之92 47分之82 81/03
现在我有了mouseX和mouseY。 有谁知道如何创建一个函数,在JavaScript中为您提供最接近的x和y值?
提前致谢!
答案 0 :(得分:0)
做一些vecor数学。鉴于图像和触摸位置:
const coords = [[92, 81], [82, 47], [81, 03]];
const touchX = 57, touchY = 84;
回过头来计算距离vecors长度:
let closest = [null, null];
let distance = Infinity;
for(const [x, y] of coords){
let d = Math.sqrt((touchX - x) ** 2 + (touchY - y) ** 2);
if(d < distance){
closest = [x, y];
distance = d;
}
}