目前的思路
求想实现 图片1 的情况下 按比例缩放 而不像 图2 3那样缩放会有间距差
目前思路1代码: 能实现放大 缩小效果 效果如图2 图 3
back_rect.x =0;
back_rect.y =0;
back_rect.w =5000 * 滑轮数值;
back_rect.h =5000 * 滑轮数值;
NPCrect.x = 100;
NPCrect.y = 100;
NPCrect.w = 100 * 滑轮数值;
NPCrect.h = 100 * 滑轮数值;
NPCrect.y = NPCrect.y + back_rect.y - NPCrect.w * 滑轮数值 / 2;
NPCrect.x = NPCrect.x + back_rect.x - NPCrect.w * 滑轮数值 / 2;
if (event.type == SDL_MOUSEWHEEL) {
if (event.wheel.y > 0) {
滑轮数值 += 0.11;
if (event.wheel.y < 0) {
滑轮数值 -= 0.11;
绘制的时候进行计算就行了
比如定义一个称摄像机对象,记录其位置和缩放,每次绘制地图和人物时用摄像机的数据计算出绘制在频幕上的位置和缩放