首先感谢您抽出时间阅读我的问题:-)
我有一个原始图像(w’:2124,h’:3204)和相同的图像缩放(w:512,h:768).宽度比为4.14(rw),高度比为4.17(rh).
当我收到缩放图像(x,y)中的坐标时,我试图知道原始图像中的坐标(x’,y’).我正在使用公式:x’= x * rw和y’= y * rh.但是当我画一条线时,或者一个矩形总是出现一个在x或y更高时递增的移位.
请问有谁知道如何在不失去准确性的情况下变换坐标?
提前致谢!
奥斯卡.
解决方法:
或者您可以使用QTransform::quadToQuad创建变换并使用它来映射点,线,线等:
QVector<QPointF> p1;
p1 << scaledRect.topLeft() << scaledRect.topRight() << scaledRect.bottomRight() << scaledRect.bottomLeft();
QVector<QPointF> p2;
p2 << originalRect.topLeft() << originalRect.topRight() << originalRect.bottomRight() << originalRect.bottomLeft();
QTransform::quadToQuad(p1, p2, mappingTransform);
...
QPointF originalPoint = mappingTransform.map(scalePoint);