一些背景 - 假设你有QGraphicsScene,并且只有一个视图,这是与场景的1-1比例。 您有一个QRect A,它代表场景的外部视图,具有预定义的像素大小。 你有一个QRect A1,它是A中较小的矩形。
如何将A1转换为场景,以便正确缩放(即如果它是矩形A的1/4,它将占据场景的1/4),然后将该转换撤消到缩放在场景中创建的矩形以正确适合矩形?
我可以做所有这些蛮力,但我想知道是否有使用Qt内置课程的方式...
答案 0 :(得分:1)
在查看了一些示例以尝试找到类似用途后,我意识到我完全忽略了这一点 - 我可以直接将A / A1设置为场景,并缩放视图(通过完全明显,但不知何故完全被忽视,直到现在QGraphicsView :: fitInView(..))适合里面的rects。不需要矩形变换。总'呃'时刻。 :)
我需要在与它交互时在视图中转换鼠标点击和点,但是有一套很好的mapTo * mapFrom *可以很好地处理它。
TL; DR - 使用fitInView()