このページでは

概念 - アイテム内のビジュアル座標Qt Quick

アイテム座標

Qt Quick で使用されるデフォルトのビジュアル座標系は、アイテム座標です。これは、アイテムの左上隅を (0,0) とするデカルト座標系です。x 軸は右方向へ、y 軸は下方向へと延びており、アイテムの右下隅は座標 (width, height) になります。

個々のアイテムの位置は、その親の座標系を基準として指定されます。つまり、兄弟関係にないアイテムから x、y 値を読み取る場合、それらを同じ座標系に変換するための変換が必要になることがあります。このような場合、中間座標系としてシーン座標がよく使用されます。

シーン座標

シーン座標とは、(0,0) がシーンが現在レンダリングされているウィンドウの左上隅に対応する座標のことです。シーン座標は通常、ウィンドウ内のルートアイテムのアイテム座標と同じです。

関心のある座標系を持つアイテムの関数を使用して、アイテム座標からシーン座標へ変換することができます。シーン座標や他のアイテムの座標への変換については、Item::mapFromItem およびItem::mapToItem を参照してください。

実例

以下の 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) の白い点と同じ位置です。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.