Spec-Zone.ru › Qt 5.6

Класс QTransform

Класс QTransform определяет 2D преобразования системы координат. Подробнее...

Заголовок: #include <QTransform>
qmake: QT += gui
С момента: Qt 4.3
  • Список всех членов, включая наследуемые
  • Устаревшие члены

Типы

перечисление ТипПреобразования { TxNone, TxTranslate, TxScale, TxRotate, TxShear, TxProject }

Открытые функции

QTransform()
QTransform(qreal m11, qreal m12, qreal m13, qreal m21, qreal m22, qreal m23, qreal m31, qreal m32, qreal m33 = 1.0)
QTransform(qreal m11, qreal m12, qreal m21, qreal m22, qreal dx, qreal dy)
QTransform(const QMatrix &matrix)
qreal m11() const
qreal m12() const
qreal m13() const
qreal m21() const
qreal m22() const
qreal m23() const
qreal m31() const
qreal m32() const
qreal m33() const
QTransform присоединённая() const
qreal определитель() const
qreal dx() const
qreal dy() const
QTransform обращённая(bool *invertible = Q_NULLPTR) const
bool является_аффинным() const
bool является_единичной() const
bool обратимая() const
bool вращающая() const
bool масштабирующая() const
bool смещающая() const
void отобразить(qreal x, qreal y, qreal *tx, qreal *ty) const
QPointF отобразить(const QPointF &p) const

Статические публичные члены

QTransform fromScale(qreal sx, qreal sy)
QTransform fromTranslate(qreal dx, qreal dy)
bool quadToQuad(const QPolygonF &one, const QPolygonF &two, QTransform &trans)
bool quadToSquare(const QPolygonF &quad, QTransform &trans)
bool squareToQuad(const QPolygonF &quad, QTransform &trans)

Связанные нечлены

bool qFuzzyCompare(const QTransform &t1, const QTransform &t2)
uint qHash(const QTransform &key, uint seed = 0)
QPoint operator*(const QPoint &point, const QTransform &matrix)
QPointF operator*(const QPointF &point, const QTransform &matrix)
QLineF operator*(const QLineF &line, const QTransform &matrix)
QLine operator*(const QLine &line, const QTransform &matrix)
QPolygonF operator*(const QPolygonF &polygon, const QTransform &matrix)
QPolygon operator*(const QPolygon &polygon, const QTransform &matrix)
QRegion operator*(const QRegion &region, const QTransform &matrix)
QPainterPath operator*(const QPainterPath &path, const QTransform &matrix)
QDataStream & operator<<(QDataStream &stream, const QTransform &matrix)
QDataStream & operator>>(QDataStream &stream, QTransform &matrix)

Подробное описание

Класс QTransform задает 2D преобразования системы координат.

Преобразование указывает, как переместить, масштабировать, сдвинуть, повернуть или спроецировать систему координат и обычно используется при отрисовке графики.

QTransform отличается от QMatrix тем, что это истинная 3x3 матрица, позволяющая перспективу преобразования. Метод toAffine() класса QTransform позволяет привести QTransform к QMatrix. Если для матрицы задано преобразование перспективы, преобразование приведет к потере данных.

Рекомендуется использовать класс QTransform для преобразований в Qt.

Объект QTransform может быть создан с помощью функций setMatrix(), scale(), rotate(), translate() и shear(). Также, он может быть создан с помощью основных операций над матрицами. Матрица также может быть задана при создании, и её можно сбросить до единичной матрицы (по умолчанию) с помощью функции reset().

Класс QTransform поддерживает отображение графических примитивов: заданная точка, линия, многоугольник, область или путь художника могут быть отображены в системе координат, заданной матрицей this, используя функцию map(). В случае прямоугольника его координаты могут быть преобразованы с помощью функции mapRect(). Прямоугольник также может быть преобразован в многоугольник (отображён в системе координат, заданной матрицей this) с помощью функции mapToPolygon().

QTransform предоставляет функцию isIdentity(), которая возвращает true если матрица является единичной матрицей, и функцию isInvertible(), которая возвращает true если матрица невырожденная (т.е. AB = BA = I). Функция inverted() возвращает инвертированную копию матрицы this, если она обратима (в противном случае возвращает единичную матрицу), а adjoint() возвращает классический сопряжённый (присоединённый) матрицы. Кроме того, QTransform предоставляет функцию determinant(), которая возвращает определитель матрицы.

Наконец, класс QTransform поддерживает умножение, сложение и вычитание матриц, а объекты класса могут быть как потоковым образом введены, так и сравнены.

Отрисовка графики

При отрисовке графики матрица определяет преобразования, но фактическое преобразование выполняется процедурами рисования в QPainter.

По умолчанию QPainter работает в собственной системе координат связанного устройства. Стандартная система координат QPaintDevice имеет начало в верхнем левом углу. Значения x увеличиваются вправо, значения y увеличиваются вниз. Подробное описание см. в документации к системе координат.

QPainter имеет функции для перемещения, масштабирования, сдвига и поворота системы координат без использования QTransform. Например:

void SimpleTransformation::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    painter.setPen(QPen(Qt::blue, 1, Qt::DashLine));
    painter.drawRect(0, 0, 100, 100);

    painter.rotate(45);

    painter.setFont(QFont("Helvetica", 24));
    painter.setPen(QPen(Qt::black, 1));
    painter.drawText(20, 10, "QTransform");
}

Хотя эти функции очень удобны, может быть более эффективно создать QTransform и вызвать QPainter::setTransform(), если необходимо выполнить несколько операций преобразования. Например:

void CombinedTransformation::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    painter.setPen(QPen(Qt::blue, 1, Qt::DashLine));
    painter.drawRect(0, 0, 100, 100);

    QTransform transform;
    transform.translate(50, 50);
    transform.rotate(45);
    transform.scale(0.5, 1.0);
    painter.setTransform(transform);

    painter.setFont(QFont("Helvetica", 24));
    painter.setPen(QPen(Qt::black, 1));
    painter.drawText(20, 10, "QTransform");
}

Основные операции над матрицами

Объект QTransform содержит 3x3 матрицу. Элементы m31 (dx) и m32 (dy) задают горизонтальный и вертикальный сдвиг. Элементы m11 и m22 задают горизонтальное и вертикальное масштабирование. Элементы m21 и m12 задают горизонтальный и вертикальный сдвиг. И, наконец, элементы m13 и m23 задают горизонтальную и вертикальную проекцию, с m33 как дополнительным коэффициентом проекции.

QTransform преобразует точку в плоскости в другую точку по следующим формулам:

x' = m11*x + m21*y + dx
y' = m22*y + m12*x + dy
if (is not affine) {
    w' = m13*x + m23*y + m33
    x' /= w'
    y' /= w'
}

Точка (x, y) - исходная точка, а (x', y') - преобразованная точка. Точка (x', y') может быть преобразована обратно в (x, y), выполнив ту же операцию над инвертированной матрицей inverted().

Различные элементы матрицы могут быть заданы при создании матрицы или с помощью функции setMatrix() позже. Они также могут быть изменены с помощью удобных функций translate(), rotate(), scale() и shear(). Текущие значения можно получить с помощью функций m11(), m12(), m13(), m21(), m22(), m23(), m31(), m32(), m33(), dx() и dy().

Сдвиг — самое простое преобразование. Установка dx и dy переместит систему координат на dx единиц по оси X и на dy единиц по оси Y. Масштабирование можно выполнить, установив m11 и m22. Например, установка m11 в 2 и m22 в 1,5 удвоит высоту и увеличит ширину на 50%. Единичная матрица имеет m11, m22, и m33 равными 1 (все остальные равны 0), отображая точку на себя. Сдвиг контролируется элементами m12 и m21. Установка этих элементов на значения, отличные от нуля, будет скручивать систему координат. Поворот достигается установкой коэффициентов сдвига и коэффициентов масштабирования. Преобразование перспективы достигается установкой коэффициентов проекции и коэффициентов масштабирования.

Вот пример комбинированных преобразований с использованием основных операций над матрицами:

void BasicOperations::paintEvent(QPaintEvent *)
{
    double pi = 3.14;

    double a    = pi/180 * 45.0;
    double sina = sin(a);
    double cosa = cos(a);

    QTransform translationTransform(1, 0, 0, 1, 50.0, 50.0);
    QTransform rotationTransform(cosa, sina, -sina, cosa, 0, 0);
    QTransform scalingTransform(0.5, 0, 0, 1.0, 0, 0);

    QTransform transform;
    transform = scalingTransform * rotationTransform * translationTransform;

    QPainter painter(this);
    painter.setPen(QPen(Qt::blue, 1, Qt::DashLine));
    painter.drawRect(0, 0, 100, 100);

    painter.setTransform(transform);

    painter.setFont(QFont("Helvetica", 24));
    painter.setPen(QPen(Qt::black, 1));
    painter.drawText(20, 10, "QTransform");
}

См. также QPainter, Система координат, Пример аффинных преобразований и Пример преобразований.

END_OF_DOCUMENT_MARKER ```

Документация по типу члена

enum QTransform::TransformationType

Константа Значение
QTransform::TxNone 0x00
QTransform::TxTranslate 0x01
QTransform::TxScale 0x02
QTransform::TxRotate 0x04
QTransform::TxShear 0x08
QTransform::TxProject 0x10

Документация по функции члена

QTransform::QTransform()

Создаёт матрицу единичной идентичности.

Все элементы установлены в ноль, за исключением m11 и m22 (указывающих масштаб), а также m33, которые установлены в 1.

См. также reset().

QTransform::QTransform(qreal m11, qreal m12, qreal m13, qreal m21, qreal m22, qreal m23, qreal m31, qreal m32, qreal m33 = 1.0)

Создаёт матрицу с элементами m11, m12, m13, m21, m22, m23, m31, m32, m33.

См. также setMatrix().

QTransform::QTransform(qreal m11, qreal m12, qreal m21, qreal m22, qreal dx, qreal dy)

Создаёт матрицу с элементами m11, m12, m21, m22, dx и dy.

См. также setMatrix().

QTransform::QTransform(const QMatrix &matrix)

Создаёт матрицу, являющуюся копией заданной матрицы matrix. Обратите внимание, что элементы m13, m23, и m33 установлены в 0, 0 и 1 соответственно.

qreal QTransform::m11() const

Возвращает коэффициент горизонтального масштабирования.

См. также scale() и Основные операции с матрицами.

qreal QTransform::m12() const

Возвращает коэффициент вертикального сдвига.

См. также shear() и Основные операции с матрицами.

qreal QTransform::m13() const

Возвращает коэффициент горизонтальной проекции.

См. также translate() и Основные операции с матрицами.

qreal QTransform::m21() const

Возвращает коэффициент горизонтального сдвига.

См. также shear() и Основные операции с матрицами.

qreal QTransform::m22() const

Возвращает коэффициент вертикального масштабирования.

См. также scale() и Основные операции с матрицами.

qreal QTransform::m23() const

Возвращает коэффициент вертикальной проекции.

См. также translate() и Основные операции с матрицами.

qreal QTransform::m31() const

Возвращает коэффициент горизонтального смещения.

См. также dx(), translate(), и Основные операции с матрицами.

qreal QTransform::m32() const

Возвращает коэффициент вертикального смещения.

См. также dy(), translate(), и Основные операции с матрицами.

qreal QTransform::m33() const

Возвращает коэффициент деления.

См. также translate() и Основные операции с матрицами.

QTransform QTransform::adjoint() const

Возвращает присоединённую матрицу.

qreal QTransform::determinant() const

Возвращает определитель матрицы.

qreal QTransform::dx() const

Возвращает коэффициент горизонтального смещения.

См. также m31(), translate(), и Основные операции с матрицами.

qreal QTransform::dy() const

Возвращает коэффициент вертикального смещения.

См. также translate() и Основные операции с матрицами.

[static] QTransform QTransform::fromScale(qreal sx, qreal sy)

Создаёт матрицу, соответствующую масштабированию на sx по горизонтали и sy по вертикали. Это то же самое, что QTransform().scale(sx, sy), но немного быстрее.

Эта функция была добавлена в Qt 4.5.

[static] QTransform QTransform::fromTranslate(qreal dx, qreal dy)

Создаёт матрицу, соответствующую сдвигу на dx по оси X и dy по оси Y. Это то же самое, что QTransform().translate(dx, dy), но немного быстрее.

Эта функция была добавлена в Qt 4.5.

QTransform QTransform::inverted(bool *invertible = Q_NULLPTR) const

Возвращает инвертированную копию этой матрицы.

Если матрица является вырожденной (необратимой), возвращаемая матрица — это матрица единичной идентичности. Если invertible является допустимым (т.е. не 0), его значение устанавливается в true, если матрица обратима, в противном случае оно устанавливается в false.

См. также isInvertible().

bool QTransform::isAffine() const

Возвращает true если матрица представляет аффинное преобразование, в противном случае возвращает false.

bool QTransform::isIdentity() const

Возвращает true если матрица является матрицей единичной идентичности, в противном случае возвращает false.

См. также reset().

bool QTransform::isInvertible() const

Возвращает true если матрица обратима, в противном случае возвращает false.

См. также inverted().

bool QTransform::isRotating() const

Возвращает true если матрица представляет некое вращательное преобразование, в противном случае возвращает false.

Примечание: преобразование вращения на 180 градусов и/или 360 градусов рассматривается как преобразование масштабирования.

См. также reset().

bool QTransform::isScaling() const

Возвращает true если матрица представляет преобразование масштабирования, в противном случае возвращает false.

См. также reset().

bool QTransform::isTranslating() const

Возвращает true если матрица представляет собой преобразование трансляции, в противном случае возвращает false.

См. также reset().

void QTransform::map(qreal x, qreal y, qreal *tx, qreal *ty) const

Преобразует заданные координаты x и y в систему координат, определённую этой матрицей. Результирующие значения записываются в *tx и *ty соответственно.

Координаты преобразуются по следующим формулам:

x' = m11*x + m21*y + dx
y' = m22*y + m12*x + dy
if (is not affine) {
    w' = m13*x + m23*y + m33
    x' /= w'
    y' /= w'
}

Точка (x, y) — исходная точка, а (x', y') — преобразованная точка.

См. также Основные операции с матрицами.

QPointF QTransform::map(const QPointF &p) const

Это перегруженный метод.

Создаёт и возвращает объект QPointF, являющийся копией заданной точки p, преобразованной в систему координат, определённую этой матрицей.

QLine QTransform::map(const QLine &l) const

Это перегруженный метод.

Создаёт и возвращает объект QLineF, являющийся копией заданной прямой l, преобразованной в систему координат, определённую этой матрицей.

QLineF QTransform::map(const QLineF &line) const

Это перегруженный метод.

Создаёт и возвращает объект QLine, являющийся копией заданной прямой line, преобразованной в систему координат, определённую этой матрицей. Обратите внимание, что преобразованные координаты округляются до ближайшего целого числа.

QPolygonF QTransform::map(const QPolygonF &polygon) const

Это перегруженный метод.

Создаёт и возвращает объект QPolygonF, являющийся копией заданного многоугольника polygon, преобразованного в систему координат, определённую этой матрицей.

QPolygon QTransform::map(const QPolygon &polygon) const

Это перегруженный метод.

Создаёт и возвращает объект QPolygon, являющийся копией заданного многоугольника polygon, преобразованного в систему координат, определённую этой матрицей. Обратите внимание, что преобразованные координаты округляются до ближайшего целого числа.

QRegion QTransform::map(const QRegion &region) const

Это перегруженный метод.

Создаёт и возвращает объект QRegion, являющийся копией заданной region, преобразованной в систему координат, определённую этой матрицей.

Вызов этого метода может быть довольно затратным при использовании поворотов или наклонов.

QPainterPath QTransform::map(const QPainterPath &path) const

Это перегруженный метод.

Создаёт и возвращает объект QPainterPath, являющийся копией заданного пути path, преобразованного в систему координат, определённую этой матрицей.

void QTransform::map(int x, int y, int *tx, int *ty) const

Это перегруженный метод.

Преобразует заданные координаты x и y в систему координат, определённую этой матрицей. Результирующие значения записываются в *tx и *ty соответственно. Обратите внимание, что преобразованные координаты округляются до ближайшего целого числа.

QPoint QTransform::map(const QPoint &point) const

Это перегруженный метод.

Создаёт и возвращает объект QPoint, являющийся копией заданной точки point, преобразованной в систему координат, определённую этой матрицей. Обратите внимание, что преобразованные координаты округляются до ближайшего целого числа.

QRectF QTransform::mapRect(const QRectF &rectangle) const

Создаёт и возвращает объект QRectF, являющийся копией заданного прямоугольника rectangle, преобразованного в систему координат, определённую этой матрицей.

Координаты прямоугольника преобразуются по следующим формулам:

x' = m11*x + m21*y + dx
y' = m22*y + m12*x + dy
if (is not affine) {
    w' = m13*x + m23*y + m33
    x' /= w'
    y' /= w'
}

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

См. также mapToPolygon() и Основные операции с матрицами.

QRect QTransform::mapRect(const QRect &rectangle) const

Это перегруженный метод.

Создаёт и возвращает объект QRect, являющийся копией заданного прямоугольника rectangle, преобразованного в систему координат, определённую этой матрицей. Обратите внимание, что преобразованные координаты округляются до ближайшего целого числа.

QPolygon QTransform::mapToPolygon(const QRect &rectangle) const

Создаёт и возвращает представление заданного прямоугольника rectangle в виде QPolygon, преобразованного в систему координат, определённую этой матрицей.

Координаты прямоугольника преобразуются по следующим формулам:

x' = m11*x + m21*y + dx
y' = m22*y + m12*x + dy
if (is not affine) {
    w' = m13*x + m23*y + m33
    x' /= w'
    y' /= w'
}

Многоугольники и прямоугольники ведут себя немного по-разному при преобразовании (из-за округления до целого числа), поэтому matrix.map(QPolygon(rectangle)) не всегда совпадает с matrix.mapToPolygon(rectangle).

См. также mapRect() и Основные операции с матрицами.

[static] bool QTransform::quadToQuad(const QPolygonF &one, const QPolygonF &two, QTransform &trans)

Создаёт матрицу преобразования trans, которая отображает четырёхугольник one на четырёхугольник two. Возвращает true если преобразование возможно; в противном случае возвращает false.

Это вспомогательный метод, объединяющий методы quadToSquare() и squareToQuad(). Он позволяет преобразовать входной четырёхугольник в любой другой четырёхугольник.

См. также squareToQuad() и quadToSquare().

[static] bool QTransform::quadToSquare(const QPolygonF &quad, QTransform &trans)

Создаёт матрицу преобразования trans, которая отображает четырёхугольник quad на единичный квадрат. Возвращает true если преобразование построено, или false, если такое преобразование не существует.

См. также squareToQuad() и quadToQuad().

void QTransform::reset()

Сбрасывает матрицу до единичной матрицы, т.е. все элементы устанавливаются в ноль, за исключением m11 и m22 (указывающих масштаб), и m33, которые устанавливаются в 1.

См. также QTransform(), isIdentity(), и Основные операции с матрицами.

QTransform &QTransform::rotate(qreal angle, Qt::Axis axis = Qt::ZAxis)

Поворачивает систему координат против часовой стрелки на заданный угол angle вокруг указанной оси axis и возвращает ссылку на матрицу.

Обратите внимание, что если вы применяете QTransform к точке, определённой в координатах виджета, направление вращения будет по часовой стрелке, потому что ось y направлена вниз.

Угол задаётся в градусах.

См. также setMatrix().

QTransform &QTransform::rotateRadians(qreal angle, Qt::Axis axis = Qt::ZAxis)

Поворачивает систему координат против часовой стрелки на заданный угол angle вокруг указанной оси axis и возвращает ссылку на матрицу.

Обратите внимание, что если вы применяете QTransform к точке, определённой в координатах виджета, направление вращения будет по часовой стрелке, потому что ось y направлена вниз.

Угол задаётся в радианах.

См. также setMatrix().

QTransform &QTransform::scale(qreal sx, qreal sy)

Масштабирует систему координат по оси x на sx и по оси y на sy, и возвращает ссылку на матрицу.

См. также setMatrix().

void QTransform::setMatrix(qreal m11, qreal m12, qreal m13, qreal m21, qreal m22, qreal m23, qreal m31, qreal m32, qreal m33)

Устанавливает элементы матрицы в указанные значения, m11, m12, m13, m21, m22, m23, m31, m32 и m33. Обратите внимание, что эта функция заменяет предыдущие значения. QTransform предоставляет удобные функции translate(), rotate(), scale() и shear() для управления различными элементами матрицы на основе текущей системы координат.

См. также QTransform().

QTransform &QTransform::shear(qreal sh, qreal sv)

Сдвигает систему координат на sh по горизонтали и sv по вертикали и возвращает ссылку на матрицу.

См. также setMatrix().

[static] bool QTransform::squareToQuad(const QPolygonF &quad, QTransform &trans)

Создаёт матрицу преобразования, trans, которая отображает квадрат единичного размера на четырёхугольник quad. Возвращает true если преобразование построено или false, если такое преобразование не существует.

См. также quadToSquare() и quadToQuad().

const QMatrix &QTransform::toAffine() const

Возвращает QTransform как аффинную матрицу.

Предупреждение: Если задано перспективное преобразование, преобразование приведёт к потере данных.

QTransform &QTransform::translate(qreal dx, qreal dy)

Перемещает систему координат на dx вдоль оси x и dy вдоль оси y, и возвращает ссылку на матрицу.

См. также setMatrix().

QTransform QTransform::transposed() const

Возвращает транспонированную матрицу.

TransformationType QTransform::type() const

Возвращает тип преобразования этой матрицы.

Тип преобразования — это наибольшее значение перечисления, охватывающее все преобразования матрицы. Например, если матрица и масштабируется, и сдвигается, тип будет TxShear, так как TxShear имеет большее значение перечисления, чем TxScale.

Знание типа преобразования матрицы полезно для оптимизации: часто можно обрабатывать определённые типы более эффективно, чем обрабатывать общий случай.

QTransform::operator QVariant() const

Возвращает преобразование как QVariant.

bool QTransform::operator!=(const QTransform &matrix) const

Возвращает true если эта матрица не равна заданной matrix, в противном случае возвращает false.

QTransform QTransform::operator*(const QTransform &matrix) const

Возвращает результат умножения этой матрицы на заданную matrix.

Обратите внимание, что умножение матриц не коммутативно, т. е. a*b != b*a.

QTransform &QTransform::operator*=(const QTransform &matrix)

Это перегруженная функция.

Возвращает результат умножения этой матрицы на заданную matrix.

QTransform &QTransform::operator*=(qreal scalar)

Это перегруженная функция.

Возвращает результат поэлементного умножения этой матрицы на заданный scalar.

QTransform &QTransform::operator+=(qreal scalar)

Это перегруженная функция.

Возвращает матрицу, полученную путём добавления заданного scalar к каждому элементу этой матрицы.

QTransform &QTransform::operator-=(qreal scalar)

Это перегруженная функция.

Возвращает матрицу, полученную путём вычитания заданного scalar из каждого элемента этой матрицы.

QTransform &QTransform::operator/=(qreal scalar)

Это перегруженная функция.

Возвращает результат поэлементного деления этой матрицы на заданный scalar.

QTransform &QTransform::operator=(const QTransform &matrix)

Присваивает значения заданной matrix этой матрице.

bool QTransform::operator==(const QTransform &matrix) const

Возвращает true если эта матрица равна заданной matrix, в противном случае возвращает false.

Связанные нечлены

bool qFuzzyCompare(const QTransform &t1, const QTransform &t2)

Возвращает true если t1 и t2 равны, позволяя небольшой фактор неточности для сравнений с плавающей запятой; в противном случае возвращает false.

Эта функция была введена в Qt 4.6.

uint qHash(const QTransform &key, uint seed = 0)

Возвращает значение хэша для key, используя seed для инициализации вычислений.

Эта функция была введена в Qt 5.6.

QPoint operator*(const QPoint &point, const QTransform &matrix)

Это то же самое, что и matrix.map(point).

См. также QTransform::map().

QPointF operator*(const QPointF &point, const QTransform &matrix)

То же самое, что и matrix.map(point).

См. также QTransform::map().

QLineF operator*(const QLineF &line, const QTransform &matrix)

Это то же самое, что и matrix.map(line).

См. также QTransform::map().

QLine operator*(const QLine &line, const QTransform &matrix)

Это то же самое, что и matrix.map(line).

См. также QTransform::map().

QPolygonF operator*(const QPolygonF &polygon, const QTransform &matrix)

Это то же самое, что и matrix.map(polygon).

Эта функция была введена в Qt 4.3.

См. также QTransform::map().

QPolygon operator*(const QPolygon &polygon, const QTransform &matrix)

Это то же самое, что и matrix.map(polygon).

См. также QTransform::map().

QRegion operator*(const QRegion &region, const QTransform &matrix)

Это то же самое, что и matrix.map(region).

См. также QTransform::map().

QPainterPath operator*(const QPainterPath &path, const QTransform &matrix)

Это то же самое, что и matrix.map(path).

Эта функция была введена в Qt 4.3.

См. также QTransform::map().

QDataStream &operator<<(QDataStream &stream, const QTransform &matrix)

Записывает заданную matrix в заданный stream и возвращает ссылку на поток.

Эта функция была введена в Qt 4.3.

См. также Сериализация типов данных Qt.

QDataStream &operator>>(QDataStream &stream, QTransform &matrix)

Читает заданную matrix из заданного stream и возвращает ссылку на поток.

Эта функция была введена в Qt 4.3.

См. также Сериализация типов данных Qt.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qtransform.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API