diff options
author | Paul Wicking <paul.wicking@qt.io> | 2021-06-10 15:41:25 +0200 |
---|---|---|
committer | Paul Wicking <paul.wicking@qt.io> | 2021-06-25 17:30:47 +0200 |
commit | ae2ef9dbf060ba101e32bae2b5edfed979630e30 (patch) | |
tree | f673b41a1a1a9aaa3bd36617d13deff83f023718 /src/gui/doc | |
parent | af5f91fdf9edc96149fd2070c2b32985c5773778 (diff) |
Doc: Improve QTransform documentation
* Explain QTransform's model of vector/matrix operations.
* Improve snippets used to illuminate QTransform's behavior.
Fixes: QTBUG-83869
Pick-to: 6.2 6.1 5.15
Change-Id: I84c3b1a221c139ee992f82c3ee4aebadeef8ee63
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/gui/doc')
-rw-r--r-- | src/gui/doc/snippets/code/src_gui_painting_qtransform.cpp | 8 | ||||
-rw-r--r-- | src/gui/doc/snippets/transform/main.cpp | 14 |
2 files changed, 10 insertions, 12 deletions
diff --git a/src/gui/doc/snippets/code/src_gui_painting_qtransform.cpp b/src/gui/doc/snippets/code/src_gui_painting_qtransform.cpp index 23d55febfe..97b9ee8af9 100644 --- a/src/gui/doc/snippets/code/src_gui_painting_qtransform.cpp +++ b/src/gui/doc/snippets/code/src_gui_painting_qtransform.cpp @@ -54,7 +54,7 @@ namespace src_gui_painting_qtransform { //! [0] x' = m11*x + m21*y + dx y' = m22*y + m12*x + dy -if (is not affine) { +if (!isAffine()) { w' = m13*x + m23*y + m33 x' /= w' y' /= w' @@ -65,7 +65,7 @@ if (is not affine) { //! [1] x' = m11*x + m21*y + dx y' = m22*y + m12*x + dy -if (is not affine) { +if (!isAffine()) { w' = m13*x + m23*y + m33 x' /= w' y' /= w' @@ -76,7 +76,7 @@ if (is not affine) { //! [2] x' = m11*x + m21*y + dx y' = m22*y + m12*x + dy -if (is not affine) { +if (!isAffine()) { w' = m13*x + m23*y + m33 x' /= w' y' /= w' @@ -87,7 +87,7 @@ if (is not affine) { //! [3] x' = m11*x + m21*y + dx y' = m22*y + m12*x + dy -if (is not affine) { +if (!isAffine()) { w' = m13*x + m23*y + m33 x' /= w' y' /= w' diff --git a/src/gui/doc/snippets/transform/main.cpp b/src/gui/doc/snippets/transform/main.cpp index f3b31b0f83..d15b059020 100644 --- a/src/gui/doc/snippets/transform/main.cpp +++ b/src/gui/doc/snippets/transform/main.cpp @@ -48,6 +48,7 @@ ** ****************************************************************************/ #include <QApplication> +#include <QMath> #include <QPainter> #include <QVBoxLayout> #include <QWidget> @@ -105,18 +106,15 @@ class BasicOperations : public QWidget //! [2] void BasicOperations::paintEvent(QPaintEvent *) { - double pi = 3.14; - - double a = pi/180 * 45.0; + const double a = qDegreesToRadians(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 scale(0.5, 0, 0, 1.0, 0, 0); + QTransform rotate(cosa, sina, -sina, cosa, 0, 0); + QTransform translate(1, 0, 0, 1, 50.0, 50.0); - QTransform transform; - transform = scalingTransform * rotationTransform * translationTransform; + QTransform transform = scale * rotate * translate; QPainter painter(this); painter.setPen(QPen(Qt::blue, 1, Qt::DashLine)); |