для поворота используй ф-цию transformed класса QPixmap ну а так же посмотри в сторону классов QTransform или QMatrix. На производительности конечно скажется

Чем больше картинка тем больше и скажется. Исходя из твоего соседнего вопроса про потоки сразу могу сказать что QPixmap в потоке скорее всего не получиться преобразовывать, по крайней мере я недавно пробовал и на выходе получил пустой QPixmap и кучу варнингов. Если будешь работать в потоке используй QImage.
у меня все работает и никаких варнингов, наверное я что-то делаю не так.

более того, мне понадобилось создать две одинаковых пиксмапа - на одном пиксмапе поток рисует, а другой пиксмап (с уже отрисованным контентом) передан на отрисовку и доп. обработку другому потоку через фиксированный указатель. все прекрасно работает.
фактически двойная буферизация руками, у меня сейчас другая проблема - передача уведомлений через сигнал-слот жрет очень много =) очень часто один поток уведомляет другой, что работа сделана (пиксмап готов).