QGraphicsView和Qgraphicsscene坐标系
QGraphicsView and QGraphicsScene coordinate systems
在QT 4.8中,我创建了一个qgraphicsview和一个dynamiCradarScene(源自qgraphicsscene):
QGraphicsView* view = new QGraphicsView;
view->setMinimumSize(800, 600);
DynamicRadarScene* _scene = new DynamicRadarScene(mode, channel_types, this);
view->setScene(_scene);
QGraphicsScene的坐标系是什么?(0,0)来自左上角?如何在场景的右上角绘制一个项目(我将其设置为800x600:view-> setMinimumsize(800,600);)?如果我调整了小部件的大小,然后调整了Qgraphicsview的大小,那么如何移动我之前绘制的项目以保留在左上角?
是的,左上角通常是图形场景中(0,0)的坐标。您需要考虑的是,Qgraphicsview就像一个浏览世界(Qgraphicsscene)的窗口。您将视图设置为查看一个区域或场景,这可能是场景的全部或一部分。
设置了场景和视图后,您可以通过使用QgraphicsScene :: AddItem等函数来添加QgraphicSitems/QgraphicSitems/qgraphicsObjects或从这些函数衍生的类实例。这些项目位于场景中并绘制自己。
i(sic)调整小部件大小,因此我调整了qgraphicsview
您可以更改Qgraphicsview位置和尺寸,但是场景中的项目将保留在场景中的同一位置。通常,您通常会使用SETPOS函数:qgraphicsitem :: setPos()在场景中设置场景和查看,然后移动/调整图形项目/对象。这将项目的位置相对于其父母。如果项目没有父母,它将设置现场中的项目位置。
qgraphicsScene具有属性sceneRect
。如果未设置,则根据场景内容进行自动调整。这可以使协调的起源在某个奇怪的地方,甚至是移动的。
设置此属性。另请参阅此。
- OpenGL 着色器坐标系
- 如何在 2D 坐标系中放置点?
- 如何使用 2D 数组构建如下所示的坐标系?C++
- 带有纵坐标和横坐标的坐标系
- 如何找到两个不同坐标系中对应点之间的旋转和平移(变换矩阵)
- 使用模板元编程提供强大的坐标系
- QGraphicsView和Qgraphicsscene坐标系
- OpenGL/GLM-切换坐标系方向
- 在 opengl 中视口的一角绘制世界坐标系
- 在 2D 坐标系上绘制曲线轨迹
- 了解QT的图形视图坐标系
- OpenGL缩放/平移坐标系或语句顺序错误
- GL数学:GLM旋转函数旋转整个坐标系
- 尝试在c++中找到(x,y)坐标系中两点之间的最短路径.误差11db
- Cocos2d-x触摸事件坐标系
- 我如何将缩放合并到这个坐标系中
- 两个坐标系之间的点CGAL变换
- 在C++中计算坐标系中的点
- 如何将Lat,long转换为XY坐标系(例如UTM),然后将其映射到我的图像的像素空间
- 地理坐标系中某个点的 boost::geometry::内 失败---原因