lee*_*mes 7 math geometry qt perspective coordinate-transformation
鉴于4分是结果
QPolygon poly = transform.mapToPolygon(QRectF(0, 0, 1, 1));
Run Code Online (Sandbox Code Playgroud)
我该怎么找QTransform transform
?(甚至更好:还有一个任意的源矩形)
动机:给定在透视扭曲坐标系中绘制图像的四个角点,如何使用QPainter绘制图像?
这是一个屏幕截图,说明了GIMP中的问题,可以通过围绕图层的4个角移动来转换图层.这导致透视变换.我想在Qt应用程序中做同样的事情.我知道QTransform不仅限于仿射变换,还可以处理透视变换.
您应该能够使用 来做到这一点QTransform.squareToQuad
。只需传递QPolygonF
您想要转换成的即可。
有时我在让 squareToQuad 做我想做的事情时遇到一些问题,并且不得不使用它QTransform.quadToQuad
来定义我自己的起始四边形,但你可能会更幸运。