问题描述
我正在制作一个网络应用程序,您可以在其中绘制网格(如像素艺术)。假设我有一个这样的 32x32 网格:
我可以很容易地计算出每个盒子的宽度和高度:
let boxWidth = canvas.width / 32
let boxHeight = canvas.height / 32
我正在实施放大和缩小功能,我设法让它发挥作用:
let boxWidth = (canvas.width / 32) * scale
let boxHeight = (canvas.height / 32) * scale
// calculate new boxWidth and boxHeight every time the scale changes,and then redraw the whole canvas
例如,如果我将比例设置为 1.5,则上面的网格将如下所示:
完美运行。但是,“问题”在于它仅从 (0,0) 位置缩放,而不是从鼠标指针所在的位置缩放。
老实说,我完全不知道如何实现这样的功能。我猜我不仅要更改每个框的宽度和高度,还必须改变它们的位置?
如果有人能澄清并给我有关如何进行的提示,我将不胜感激
谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)