C

概念 - 视觉坐标

项目坐标

Qt Quick Ultralite 中使用的默认视觉坐标系统是项目坐标。这是一个笛卡尔坐标系统,(0,0) 位于项目顶部左侧。x 轴向右增长,y 轴向下增长,因此项目的右下角坐标为(宽度,高度)。

单独项目的位置是以其父级坐标系统为依据指定的。这意味着从非兄弟元素中读取 x,y 值可能需要转换,以便将它们转换为相同的坐标系统。在这种情况下,场景坐标通常用作中间坐标系统。

示例

下面是 QML 代码,创建了由方块组成的布局,添加了点进行识别

Rectangle {
    width: 200
    height: 200
    color: "red"

    Rectangle {
        x: 100
        y: 100
        width: 100
        height: 100
        color: "blue"

        Rectangle {
            width: 50
            height: 50
            color: "green"
        }
    }
}

在此图像中,黑色点位于红色矩形的项目坐标的(0,0)处。如果红色矩形是场景的根项目,则黑色点也在场景坐标的(0,0)处。

蓝色矩形相对于红色矩形顶部左侧的白色点(100,100)定位。

绿色矩形未指定 x,y,因此其位置默认为(0,0)。因为它在其父级(即蓝色矩形)的坐标系统中处于(0,0),所以它位于该矩形的左上角。这一点与红色矩形坐标系中(100,100)的白色点相同。

在特定 Qt 许可下可用。
了解更多。