如何将像素图旋转90度以绘制到libgdx中的纹理?

时间:2015-12-18 19:33:08

标签: java libgdx textures pixmap

我需要将Pixmap旋转90度。我看到了一个达到f lipped Pixmap的答案。我需要将已经处于纵向方向的图像旋转到已经在Pixmap级别上的横向,以便稍后从中创建纹理。

1 个答案:

答案 0 :(得分:4)

类似于flip pixmap method我实现了90º旋转的Pixmap,如下所示:

private Pixmap rotatePixmap (Pixmap srcPix){
    final int width = srcPix.getWidth();
    final int height = srcPix.getHeight();
    Pixmap rotatedPix = new Pixmap(height, width, srcPix.getFormat());

    for (int x = 0; x < height; x++) {
        for (int y = 0; y < width; y++) {
            rotatedPix.drawPixel(x, y, srcPix.getPixel(y, x));
        }
    }

    srcPix.dispose();
    return rotatedPix;
}

请注意,宽度和宽度也是如此。 90º旋转后高度被交换