2017-10-06 190 views
0

我想编写一个2D QT应用。目标是能够绘制矩形并调整它们并用鼠标拖动它们。 QT提供这样做的功能。该QGraphicsXxx类本身具有的像素操作,但我希望能在长度尺寸一样米到指定项目的尺寸和位置。QT坐标变换stratetgy

我找了一个很好的策略构建一个抽象层,允许独立的像素米的对象尺寸表示。例如,我正在考虑使用缩放信息扩展QRectangle,以及在现实世界和屏幕之间进行转换的方法,即像素表示。

这当然应该是可能的,而且闻起来像一个道路坐标映射地狱。而像很多的问题的工作,如果它已经解决了更多的全球/优雅而我只是没有从Qt文档查找和理解我不会感到惊讶。

+0

没有它,你使用GraphicsView框架工作? – Mailerdaimon

回答

2

使用QGraphicsScene布局的对象,所有的大小和位置是浮动和单位独立。使用QGraphicsView显示场景时,像素会发挥作用。缩放应该由视图来处理,因此不需要在场景中进行任何坐标转换。您只需改变视图的转换即可显示您想要的任何内容。

您可以将GraphicsView Framework文档中阅读更多关于它:http://doc.qt.io/qt-4.8/graphicsview.html