Я получаю растровое изображение 800 на 600 на 3 и передаю его в качестве параметра glDrawPixels(). Прежде чем передать это glDrawPixels, я хочу повернуть растровое изображение на 90 градусов. это возможно?
если бы это было не растровое изображение, а изображение типа png, я бы сделал следующее:
QMatrix rm;
rm.rotate(90);
pixmap = pixmap.transformed(rm);
pixmap.scaled(801, 701);
texture = bindTexture(pixmap);
Ответ 1 · рейтинг 1 · cmannett85
Как ответил liuyi.luo, обычный способ сделать это - использовать QImage и передать необработанные данные в требуемом формате перед преобразованием.
К сожалению, Qt не поддерживает порядок каналов BGR. Вам придется найти стороннюю библиотеку или свернуть свой собственный алгоритм, что должно быть довольно тривиально, если вы поворачиваетесь на 90 градусов. Вот достойная реализация вращения на месте.