Qt 如何将屏幕坐标更改为左下角

Qt 如何将屏幕坐标更改为左下角,qt,qt-quick,Qt,Qt Quick,默认情况下,Qt窗口中的y轴从上到下递增。如何将它从窗口的底部转换到顶部。我在Qt小部件应用程序中看到了一个解决方案,但是我们如何在QML项目中实现它呢 在OpenGL中,y轴从下到上递增,但在Qt中,它是反向样式。为什么会这样 问候 AnsifQt的顶部为零,因为这是Window、OSX、Linux等为2D图形定义屏幕坐标的方式 OpenGL更常用于3D图形,它通常将向上(y轴)的方向定义为正方向,因为这样更容易根据对象及其位置来想象3D空间 除了传统之外,没有任何真正的理由。事实上,在3D中

默认情况下,Qt窗口中的y轴从上到下递增。如何将它从窗口的底部转换到顶部。我在Qt小部件应用程序中看到了一个解决方案,但是我们如何在QML项目中实现它呢

在OpenGL中,y轴从下到上递增,但在Qt中,它是反向样式。为什么会这样

问候
Ansif

Qt的顶部为零,因为这是Window、OSX、Linux等为2D图形定义屏幕坐标的方式

OpenGL更常用于3D图形,它通常将向上(y轴)的方向定义为正方向,因为这样更容易根据对象及其位置来想象3D空间

除了传统之外,没有任何真正的理由。事实上,在3D中,y轴不一定要向上和向下,尽管通常是这样


要在屏幕上切换方向,要在底部放置零,并在屏幕上增加y轴,请从全屏高度减去每个坐标。

Qt在顶部为零,因为这是Windows、OSX、Linux等定义2D图形屏幕坐标的方式

OpenGL更常用于3D图形,它通常将向上(y轴)的方向定义为正方向,因为这样更容易根据对象及其位置来想象3D空间

除了传统之外,没有任何真正的理由。事实上,在3D中,y轴不一定要向上和向下,尽管通常是这样


要在屏幕上切换方向,要在底部置零,并在屏幕上增加y轴,请从全屏高度中减去每个坐标。

嗨,梅林,谢谢你提供了这个很好的解决方案。但是,我们可以在Qt中修改任何物理属性来改变坐标吗?你是说作为一次性设置的全局性吗?我认为没有,除非其他人知道。如果你自己构建Qt,你可以添加一个。很抱歉回复太晚。我已经用了你早期的解决方案。谢谢。为了获得左下角的y位置,您必须从屏幕位置减去QML项目的y位置和高度。嗨,Merlin,谢谢您提供了这个很好的解决方案。但是,我们可以在Qt中修改任何物理属性来改变坐标吗?你是说作为一次性设置的全局性吗?我认为没有,除非其他人知道。如果你自己构建Qt,你可以添加一个。很抱歉回复太晚。我已经用了你早期的解决方案。谢谢。为了获得左下角的y位置,您必须从屏幕位置减去QML项目的y位置和高度。