Processing 如何将位置捕捉到矩形网格?

Processing 如何将位置捕捉到矩形网格?,processing,Processing,我试图在处理中制作一个midi编辑器,我需要一个矩形单元格,你们可以点击它在那个里添加注释 到目前为止,我已经在谷歌上搜索过了,但还没有找到结果。发生的情况是,当你点击越远,它就越不准确 我不知道出了什么问题,我过去也有过这个问题,但无法解决 注意:单元格不是正方形。将鼠标坐标捕捉到最近网格单元格中心的处理代码示例(其中单元格尺寸由矩形宽度和高度定义) “当你点击下一步时,它的准确度就越低”你是什么意思?你能显示你的代码吗?每当我点击太低时,它认为我点击的点就在我实际点击的点下方。如果你不显示任

我试图在处理中制作一个midi编辑器,我需要一个矩形单元格,你们可以点击它在那个里添加注释


到目前为止,我已经在谷歌上搜索过了,但还没有找到结果。发生的情况是,当你点击越远,它就越不准确

我不知道出了什么问题,我过去也有过这个问题,但无法解决


注意:单元格不是正方形。

将鼠标坐标捕捉到最近网格单元格中心的处理代码示例(其中单元格尺寸由矩形宽度和高度定义)


“当你点击下一步时,它的准确度就越低”你是什么意思?你能显示你的代码吗?每当我点击太低时,它认为我点击的点就在我实际点击的点下方。如果你不显示任何代码,我们无法告诉你你做错了什么。请参阅
int w = 48; // rectangle width
int h = 24; // rectangle height

int snapX = round(mouseX / w) * w + w/2; // '+ w/2' is offset to center of cell
int snapY = round(mouseY / h) * h + h/2;   // '+ h/2' is offset to center of cell