Трансформационные матрицы

   
На этом шаге рассмотрим трансформационные матрицы.

   
В каждом объекте класса QPainter хранится трансформационная матрица. Ее можно считать из него, а можно установить созданную матрицу трансформации с помощью метода QPainter::setMatrix(). Если для того чтобы получить нужный результат, вам необходимо вызывать несколько методов трансформации, то эффективнее записать их в объект матрицы и устанавливать ее в объекте QPainter всякий раз, когда необходима трансформация. Например:

QMatrix mat;
mat.scale(2, 2);
mat.shear(0.2, 0.5);
mat.rotate(15);
painter.setMatrix(mat);
painter.drawText(rect(), Qt::AlignLeft, "Трансформация");

   
Результат применения трансформационной матрицы к тексту представлен на рисунке 1.


Рис.1. Пример трансформации текста

   
Файлы приложения можно взять Предыдущий шаг
Содержание
Следующий шаг



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий