2

I need to rotate a Pixmap by 90 degrees. I have seen an answer that achieves a flipped Pixmap. I need to rotate images that are in portrait orientation to landscape already on the Pixmap-level to later create textures out of them.

Community
  • 1
  • 1
donfuxx
  • 11,277
  • 6
  • 44
  • 76

1 Answers1

4

similar to the flip pixmap method I achieved a 90º rotated Pixmap like this:

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;
}

Note that also width & height get swapped after the 90º rotation

Community
  • 1
  • 1
donfuxx
  • 11,277
  • 6
  • 44
  • 76