2011-11-29 230 views
0

我試圖創建一個調整位圖比例(通過捏放大),然後將其居中在屏幕上的方法。但每當我縮小,它就會從左上角小,當我放大它長到右下:2D縮放,縮放和平移

public void ZoomIn() { 
     TileMap.TileSize += 2; 

     Position.x += 1; 
     Position.y += 1; 
    } 

我試圖通過移動精靈的位置偏移,但它不」工作。我不知道這個比例。你如何縮放一個精靈(位圖),並讓它保持在屏幕上的相同位置(從中心,我猜)?

回答

0

考慮垂直然後水平。

如果位圖的寬度變化了+10像素,那麼要在同一個位置水平居中,您需要將其位置移動-5個像素。

相同的高度。存儲以前的值和當前值,計算差值,右移floor(widthDiff/2)並上移floor(heightDiff/2)