gpt4 book ai didi

qt - 创建 QTransform 给定 4 个定义变换单位正方形的点

转载 作者:行者123 更新时间:2023-12-04 12:42:20 32 4
gpt4 key购买 nike

给定 4 分是以下结果

QPolygon poly = transform.mapToPolygon(QRectF(0, 0, 1, 1));

我如何找到 QTransform transform ? (更好的是:还给出了任意源矩形)

动机:给定要在透视扭曲坐标系中绘制的图像的四个角点,如何使用 QPainter 绘制图像?

Illustration of the problem

这是一张屏幕截图,说明了 GIMP 中的问题,可以通过围绕图层的 4 个角移动来变换图层。这导致透视变换。我想在 Qt 应用程序中做完全相同的事情。我知道 QTransform 不仅限于仿射变换,还可以处理透视变换。

最佳答案

你应该可以用 QTransform.squareToQuad 做到这一点.只需通过 QPolygonF你想转变为。

我有时在让 squareToQuad 做我想做的事情时遇到一些问题,不得不使用 QTransform.quadToQuad相反,定义我自己的起始四边形,但你可能会有更多的运气。

关于qt - 创建 QTransform 给定 4 个定义变换单位正方形的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11512829/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com