问题
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.
回答1:
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
来源:https://stackoverflow.com/questions/34362684/how-to-rotate-a-pixmap-by-90%c2%ba-to-draw-to-a-texture-in-libgdx