2D缩放,缩放和翻译

时间:2011-11-29 12:29:51

标签: android translation zoom scale

我正在尝试创建一种调整位图缩放比例的方法(通过“缩放缩放”),然后将其居中显示在屏幕上。但是每当我缩小时,它从左上角变小,当我放大它时会增长到右下角:

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

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

我尝试通过改变精灵的位置来抵消它,但它不起作用。我不知道这个比例。

如何缩放精灵(Bitmap)并让它保持在屏幕上的相同位置(我想从中心增长)?

1 个答案:

答案 0 :(得分:0)

垂直考虑然后水平考虑。

如果位图的宽度变化+10像素,然后在同一位置水平居中,则需要将其位置移动-5像素。

高度相同。存储以前的值和当前值,计算差异,向右移动floor(widthDiff / 2)并向上移动floor(heightDiff / 2)