我有一个由 javascript 中的数组组成的立方体网格。网格尺寸存储在变量中。dim
单个立方体的尺寸也是如此,spacing
是每个立方体之间的距离(dim
并spacing
以像素表示)。
现在,考虑到我总是可以在变量中拥有用户鼠标位置,g.mouseX
为什么g.mouseY
这段代码并不总是那么精确?
var j = Math.round(g.mouseX / (dim+spacing));
var i = Math.round(g.mouseY / (dim+spacing));
// user clicked on the cell grid[j][i]
有时我点击一个立方体,但看起来他正在考虑附近的那个。看起来用户点击的整个映射移动了一半dim
。可能使用 Math.round 会使一切几乎出错,但是当用户单击我的网格中的精确坐标时,我看不到任何其他方法可以将这种混乱和不可预测的值转换。
希望任何人都可以在这方面提供帮助!
提前致谢...