remove duplicate QMatrix and QTransform constructors

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2020-07-25 18:29:27 +00:00
parent 5aa8280793
commit 4f869be3d9
4 changed files with 13 additions and 41 deletions

View file

@ -954,7 +954,7 @@ QMatrix QMatrix::inverted(bool *invertible) const
if (dtr == 0.0) { if (dtr == 0.0) {
if (invertible) if (invertible)
*invertible = false; // singular matrix *invertible = false; // singular matrix
return QMatrix(true); return QMatrix();
} }
else { // invertible matrix else { // invertible matrix
if (invertible) if (invertible)
@ -963,8 +963,7 @@ QMatrix QMatrix::inverted(bool *invertible) const
return QMatrix((_m22*dinv), (-_m12*dinv), return QMatrix((_m22*dinv), (-_m12*dinv),
(-_m21*dinv), (_m11*dinv), (-_m21*dinv), (_m11*dinv),
((_m21*_dy - _m22*_dx)*dinv), ((_m21*_dy - _m22*_dx)*dinv),
((_m12*_dx - _m11*_dy)*dinv), ((_m12*_dx - _m11*_dy)*dinv));
true);
} }
} }
@ -1046,7 +1045,7 @@ QMatrix QMatrix::operator *(const QMatrix &m) const
qreal tdx = _dx*m._m11 + _dy*m._m21 + m._dx; qreal tdx = _dx*m._m11 + _dy*m._m21 + m._dx;
qreal tdy = _dx*m._m12 + _dy*m._m22 + m._dy; qreal tdy = _dx*m._m12 + _dy*m._m22 + m._dy;
return QMatrix(tm11, tm12, tm21, tm22, tdx, tdy, true); return QMatrix(tm11, tm12, tm21, tm22, tdx, tdy);
} }
/*! /*!

View file

@ -105,20 +105,6 @@ public:
private: private:
inline QMatrix(bool)
: _m11(1.)
, _m12(0.)
, _m21(0.)
, _m22(1.)
, _dx(0.)
, _dy(0.) {}
inline QMatrix(qreal am11, qreal am12, qreal am21, qreal am22, qreal adx, qreal ady, bool)
: _m11(am11)
, _m12(am12)
, _m21(am21)
, _m22(am22)
, _dx(adx)
, _dy(ady) {}
friend class QTransform; friend class QTransform;
qreal _m11, _m12; qreal _m11, _m12;
qreal _m21, _m22; qreal _m21, _m22;

View file

@ -244,8 +244,7 @@ QT_BEGIN_NAMESPACE
\sa reset() \sa reset()
*/ */
QTransform::QTransform() QTransform::QTransform()
: affine(true) : m_13(0), m_23(0), m_33(1)
, m_13(0), m_23(0), m_33(1)
, m_type(TxNone) , m_type(TxNone)
, m_dirty(TxNone) , m_dirty(TxNone)
{ {
@ -262,7 +261,7 @@ QTransform::QTransform()
QTransform::QTransform(qreal h11, qreal h12, qreal h13, QTransform::QTransform(qreal h11, qreal h12, qreal h13,
qreal h21, qreal h22, qreal h23, qreal h21, qreal h22, qreal h23,
qreal h31, qreal h32, qreal h33) qreal h31, qreal h32, qreal h33)
: affine(h11, h12, h21, h22, h31, h32, true) : affine(h11, h12, h21, h22, h31, h32)
, m_13(h13), m_23(h23), m_33(h33) , m_13(h13), m_23(h23), m_33(h33)
, m_type(TxNone) , m_type(TxNone)
, m_dirty(TxProject) , m_dirty(TxProject)
@ -278,7 +277,7 @@ QTransform::QTransform(qreal h11, qreal h12, qreal h13,
*/ */
QTransform::QTransform(qreal h11, qreal h12, qreal h21, QTransform::QTransform(qreal h11, qreal h12, qreal h21,
qreal h22, qreal dx, qreal dy) qreal h22, qreal dx, qreal dy)
: affine(h11, h12, h21, h22, dx, dy, true) : affine(h11, h12, h21, h22, dx, dy)
, m_13(0), m_23(0), m_33(1) , m_13(0), m_23(0), m_33(1)
, m_type(TxNone) , m_type(TxNone)
, m_dirty(TxShear) , m_dirty(TxShear)
@ -293,7 +292,7 @@ QTransform::QTransform(qreal h11, qreal h12, qreal h21,
and 1 respectively. and 1 respectively.
*/ */
QTransform::QTransform(const QMatrix &mtx) QTransform::QTransform(const QMatrix &mtx)
: affine(mtx._m11, mtx._m12, mtx._m21, mtx._m22, mtx._dx, mtx._dy, true), : affine(mtx._m11, mtx._m12, mtx._m21, mtx._m22, mtx._dx, mtx._dy),
m_13(0), m_23(0), m_33(1) m_13(0), m_23(0), m_33(1)
, m_type(TxNone) , m_type(TxNone)
, m_dirty(TxShear) , m_dirty(TxShear)
@ -320,7 +319,7 @@ QTransform QTransform::adjoint() const
return QTransform(h11, h12, h13, return QTransform(h11, h12, h13,
h21, h22, h23, h21, h22, h23,
h31, h32, h33, true); h31, h32, h33);
} }
/*! /*!
@ -330,7 +329,7 @@ QTransform QTransform::transposed() const
{ {
QTransform t(affine._m11, affine._m21, affine._dx, QTransform t(affine._m11, affine._m21, affine._dx,
affine._m12, affine._m22, affine._dy, affine._m12, affine._m22, affine._dy,
m_13, m_23, m_33, true); m_13, m_23, m_33);
t.m_type = m_type; t.m_type = m_type;
t.m_dirty = m_dirty; t.m_dirty = m_dirty;
return t; return t;
@ -348,7 +347,7 @@ QTransform QTransform::transposed() const
*/ */
QTransform QTransform::inverted(bool *invertible) const QTransform QTransform::inverted(bool *invertible) const
{ {
QTransform invert(true); QTransform invert;
bool inv = true; bool inv = true;
switch(inline_type()) { switch(inline_type()) {
@ -452,7 +451,7 @@ QTransform QTransform::fromTranslate(qreal dx, qreal dy)
return QTransform(); return QTransform();
} }
#endif #endif
QTransform transform(1, 0, 0, 0, 1, 0, dx, dy, 1, true); QTransform transform(1, 0, 0, 0, 1, 0, dx, dy, 1);
if (dx == 0 && dy == 0) if (dx == 0 && dy == 0)
transform.m_type = TxNone; transform.m_type = TxNone;
else else
@ -518,7 +517,7 @@ QTransform QTransform::fromScale(qreal sx, qreal sy)
return QTransform(); return QTransform();
} }
#endif #endif
QTransform transform(sx, 0, 0, 0, sy, 0, 0, 0, 1, true); QTransform transform(sx, 0, 0, 0, sy, 0, 0, 0, 1);
if (sx == 1. && sy == 1.) if (sx == 1. && sy == 1.)
transform.m_type = TxNone; transform.m_type = TxNone;
else else
@ -875,7 +874,7 @@ QTransform QTransform::operator*(const QTransform &m) const
if (thisType == TxNone) if (thisType == TxNone)
return m; return m;
QTransform t(true); QTransform t;
TransformationType type = qMax(thisType, otherType); TransformationType type = qMax(thisType, otherType);
switch(type) { switch(type) {
case TxNone: case TxNone:

View file

@ -143,18 +143,6 @@ public:
static QTransform fromScale(qreal dx, qreal dy); static QTransform fromScale(qreal dx, qreal dy);
private: private:
inline QTransform(qreal h11, qreal h12, qreal h13,
qreal h21, qreal h22, qreal h23,
qreal h31, qreal h32, qreal h33, bool)
: affine(h11, h12, h21, h22, h31, h32, true)
, m_13(h13), m_23(h23), m_33(h33)
, m_type(TxNone)
, m_dirty(TxProject) {}
inline QTransform(bool)
: affine(true)
, m_13(0), m_23(0), m_33(1)
, m_type(TxNone)
, m_dirty(TxNone) {}
inline TransformationType inline_type() const; inline TransformationType inline_type() const;
QMatrix affine; QMatrix affine;
qreal m_13; qreal m_13;