Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: QCasper от Ноябрь 10, 2005, 14:56



Название: Как ворочать пиксмап без тормозов?
Отправлено: QCasper от Ноябрь 10, 2005, 14:56
Рисую в пиксмап, ну или загружаю туда картинку, и в обработчике paintEvent отображаю и поворачиваю на угол. Угол увеличивается на один градус при движении мыши с зажатой левой кнопкой. Это все это класс наследованный от QWidget.
Проблема такая, - чем больше я растягиваю виджет, тем сильнее тормозит, если виджет 500*500, то тормозит так как будто я в Doom 3 на pentium 2 играю.
Я посмотрел демку кутешную, Affine Transformations, там у них все прекрасно крутится без тормозов с любым размером. Я код посмотрел, и решил, что по большому счету я делаю тоже самое, а именно:

Код:
Mywidg::Mywidg(QWidget *parent):QWidget(parent){
    pixmap = QPixmap("pp.png");
}
void Mywidg::paintEvent(QPaintEvent *e) {
    painter.begin(this);
    painter.rotate(angle);
    painter.drawPixmap(rect(), pixmap);
}


Казалось бы кода ноль, че так тормозит то?