求图像定位放大算法
在一个scrollbox 里面显示一个图,要求放大或缩小后的视野(scrollbox)中心始终不能离开某兴趣点(该区域可以在图片的任何位置)。
难点在:每次缩放后,image的left和top该放在哪里呢。
现在我已经能无极放大缩小了,不过只是基于中点的放大和缩小,图片被移动过就不知道怎么做了。
[解决办法]
我以前做过一个类似的组合控件,中间是一个image,外面是panel,放大或者缩小时,算出和原始图片的大小差值,然后用image的top和left加/减就可以了,在外部的panel里是看不出来的,不过要记得边界处理
[解决办法]
不知道...........
[解决办法]
left和top随着兴趣点的不同, 移动的比例随时都在变化。
如果图片的右上角在scrollbox的中心,要求放大时这个右上角始终位于scrollbox的中心,如何做?
[解决办法]
不太清楚
[解决办法]
1、取得scrollbox滚动条位置(水平、垂直);
2、获取当前图纸放大缩小比例;
3、结合1、2步骤,得出:当前鼠标点在原始图片大小的相对位置;
4、依据步骤3得出的位置结合当前放大/缩小比例,重新截取要获取的图片区域,再画到scrollbox中
[解决办法]
如果不用截取区域的方法,直接算图片的left,top,该怎么算呢?