#ifndef TRANSFORM_H #define TRANSFORM_H #include #include #include "common/coordinates.h" struct ReferencePoint { QPoint xy; QPointF pp; }; class Transform { public: Transform(const QList &points); bool isNull() {return _transform.type() == QTransform::TxNone;} const QString &errorString() const {return _errorString;} const QTransform &transform() const {return _transform;} private: void simple(const QList &points); void affine(const QList &points); QTransform _transform; QString _errorString; }; QDebug operator<<(QDebug dbg, const ReferencePoint &p); #endif // TRANSFORM_H