一、鼠标滚轮缩放的中心点设置为当前鼠标中心点 - 要点分析
----
鼠标指针指向界面中的 Canvas 画布某个位置 , Canvas 画布中绘制着一张超大图片 , 以该位置为中心 , 滑动鼠标滚轮时进行缩放...;
使用鼠标滚轮缩放后 , 在 Canvas 中绘制的图片的尺寸肯定是放大或者缩小了 , 尺寸发生了改变 ;
图片缩放时 , 鼠标指针指向一个位置 , 该位置对应着一个当前 Canvas 画布中的 x..., 并设置图片位置 ;
这样图片缩放时 , 始终可以保证鼠标指向的部位保持位置不变 ;
1、保存当前鼠标指针指向的位置
首先 , 在类中定义如下成员字段 ,
pointer_x 和 pointer_y..., 保存当前的鼠标位置及比例 ;
在鼠标滚轮事件 MouseWheelEvent 中 , 可以直接通过调用 e.getX(), e.getY() 获取到当前 鼠标指针 在 Canvas 画布的坐标 ;...H 标识放置在界面中心 ;
将鼠标指针放在 H 位置 , 缩放 , 发现此时缩放 , 就是以当前鼠标指针为中心进行的缩放 ;