6#include <QtGui/qtguiglobal.h>
7#include <QtGui/qpolygon.h>
8#include <QtGui/qregion.h>
9#include <QtGui/qwindowdefs.h>
10#include <QtCore/qline.h>
11#include <QtCore/qpoint.h>
12#include <QtCore/qrect.h>
33 : m_matrix{ {1, 0, 0}, {0, 1, 0}, {0, 0, 1} }
39 : m_matrix{ {h11, h12, h13}, {h21, h22, h23}, {h31, h32, h33} }
41 , m_dirty(TxProject) {}
44 : m_matrix{ {h11, h12, 0}, {h21, h22, 0}, {dx, dy, 1} }
53 bool isAffine()
const;
54 bool isIdentity()
const;
55 bool isInvertible()
const;
56 bool isScaling()
const;
57 bool isRotating()
const;
58 bool isTranslating()
const;
62 inline qreal determinant()
const;
80 [[nodiscard]]
QTransform inverted(
bool *invertible =
nullptr)
const;
87#if QT_VERSION < QT_VERSION_CHECK(7, 0, 0)
101 static bool quadToQuad(
const QPolygonF &one,
125 void map(
int x,
int y,
int *tx,
int *
ty)
const;
138 qreal (& m_matrix)[3][3];
147 inline TransformationType inline_type()
const;
148 qreal m_matrix[3][3];
150 mutable uint m_type : 5;
151 mutable uint m_dirty : 5;
160 if (m_dirty == TxNone)
161 return static_cast<TransformationType
>(m_type);
171 return inline_type() ==
TxNone;
195 return m_matrix[0][0] * (m_matrix[2][2] * m_matrix[1][1] - m_matrix[2][1] * m_matrix[1][2]) -
196 m_matrix[1][0] * (m_matrix[2][2] * m_matrix[0][1] - m_matrix[2][1] * m_matrix[0][2]) +
197 m_matrix[2][0] * (m_matrix[1][2] * m_matrix[0][1] - m_matrix[1][1] * m_matrix[0][2]);
201 return m_matrix[0][0];
205 return m_matrix[0][1];
209 return m_matrix[0][2];
213 return m_matrix[1][0];
217 return m_matrix[1][1];
221 return m_matrix[1][2];
225 return m_matrix[2][0];
229 return m_matrix[2][1];
233 return m_matrix[2][2];
237 return m_matrix[2][0];
241 return m_matrix[2][1];
251 m_matrix[0][0] *=
num;
252 m_matrix[0][1] *=
num;
253 m_matrix[0][2] *=
num;
254 m_matrix[1][0] *=
num;
255 m_matrix[1][1] *=
num;
256 m_matrix[1][2] *=
num;
257 m_matrix[2][0] *=
num;
258 m_matrix[2][1] *=
num;
259 m_matrix[2][2] *=
num;
275 m_matrix[0][0] +=
num;
276 m_matrix[0][1] +=
num;
277 m_matrix[0][2] +=
num;
278 m_matrix[1][0] +=
num;
279 m_matrix[1][1] +=
num;
280 m_matrix[1][2] +=
num;
281 m_matrix[2][0] +=
num;
282 m_matrix[2][1] +=
num;
283 m_matrix[2][2] +=
num;
291 m_matrix[0][0] -=
num;
292 m_matrix[0][1] -=
num;
293 m_matrix[0][2] -=
num;
294 m_matrix[1][0] -=
num;
295 m_matrix[1][1] -=
num;
296 m_matrix[1][2] -=
num;
297 m_matrix[2][0] -=
num;
298 m_matrix[2][1] -=
num;
299 m_matrix[2][2] -=
num;
321#ifndef QT_NO_DATASTREAM
326#ifndef QT_NO_DEBUG_STREAM
\inmodule QtCore\reentrant
\inmodule QtCore\reentrant
\inmodule QtCore\reentrant
The QPolygonF class provides a list of points using floating point precision.
The QPolygon class provides a list of points using integer precision.
\inmodule QtCore\reentrant
\inmodule QtCore\reentrant
The QRegion class specifies a clip region for a painter.
QMap< QString, QString > map
[6]
Combined button and popup list for selecting options.
#define Q_DECL_CONST_FUNCTION
#define QT_WARNING_DISABLE_FLOAT_COMPARE
constexpr bool operator!=(const timespec &t1, const timespec &t2)
constexpr timespec & operator+=(timespec &t1, const timespec &t2)
bool qFuzzyIsNull(qfloat16 f) noexcept
GLint GLint GLint GLint GLint x
[0]
GLboolean GLboolean GLboolean GLboolean a
[7]
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat t1
[4]
GLenum GLenum GLenum GLenum GLenum scale
static Q_CONSTINIT QBasicAtomicInteger< unsigned > seed
bool operator==(const QRandomGenerator &rng1, const QRandomGenerator &rng2)
static const struct TessellationModeTab quad[]
#define Q_DECLARE_TYPEINFO(TYPE, FLAGS)
static bool translate(xcb_connection_t *connection, xcb_window_t child, xcb_window_t parent, int *x, int *y)