QGraphicsPolygonItem从左上角开始缩放

时间:2011-12-15 03:36:01

标签: c++ qt scaling qgraphicsitem

关于QGraphicsPolygonItem缩放,我有一个问题。

我有多边形(在QGraphicsPolygonItem内):

QPolygonF p1; 
p1 << QPointF(-4, 32) << QPointF(-4, -32) << QPointF(4, -32) << QPointF(4, 32);
//or
//p1 << QPointF(0, 0) << QPointF(8, 0) << QPointF(8, 64) << QPointF(0, 64);
//whatever, they both doesn't work correctly.

然后,我尝试缩放它(setScale(2)),并且Polygon从中心点开始缩放,而不是从左上角开始缩放。我已阅读有关Qt缩放和原点的文档,但没有效果。 出于测试目的,我将多边形更改为矩形 - 缩放工作正常。

如何从顶部左侧缩放多边形?

无比例(多边形红色,矩形黑色): setScale(1) http://forum.sources.ru/uploads/post-10-1323844540-0.png

比例尺x2: setScale(2) http://forum.sources.ru/uploads/post-10-1323844540-1.png

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

您需要的是setTransformOriginPoint

  

在项目坐标中设置变换的原点。