このページでは

MapQuickItem QML Type

MapQuickItem 型は、Map 上に任意のQt Quick オブジェクトを表示します。詳細...

Import Statement: import QtLocation 6.12
Since: QtLocation 5.5

プロパティ

詳細な説明

MapQuickItem 型は、任意の `Qt Quick ` オブジェクトを、指定された位置とサイズでマップ上に配置するために使用されます。マップ上にアイテムを浮遊させる場合と比較して、MapQuickItem は、あたかもマップの表面上にあるかのように、マップのパン操作(およびオプションでズーム操作)に追従します。

sourceItem プロパティには、描画されるQt Quick アイテムが含まれており、これは任意の可視タイプにすることができます。

配置とサイズ設定

MapQuickItemのマップ上での位置決めは、coordinate とanchorPoint の2つのプロパティによって制御されます。coordinate のみが設定されている場合、それはアイテムを配置する経度/緯度の座標を指定します。設定された座標は、画面上に表示された際に、含まれるアイテムの左上隅と一致します。

anchorPoint プロパティを使用すると、アイテムがオフセットされるピクセル数を設定することで、座標を左上隅以外のアイテムの他の部分と合わせることができます。簡単に言えば、anchorPoint で指定されたアイテム上の点は、表示された際に指定されたcoordinate と位置が一致する点となります。

MapQuickItemは、マップに固定されるだけでなく、オプションでマップの縮尺に追従し、マップのズームインやズームアウトに合わせてサイズを変更することもできます。この動作は、zoomLevel プロパティによって制御されます。zoomLevel が設定されていない場合のデフォルトの挙動は、アイテムが「マップ上」ではなく「画面上」に描画されるため、マップのズームレベルに関係なく、そのサイズは変わりません。

パフォーマンス

MapQuickItemのパフォーマンスは、通常、含まれるQt Quick アイテム単体と同程度です。追加されるオーバーヘッドは、元のアイテムの平行移動および(場合によっては)拡大縮小、ならびに経度・緯度から画面上の位置への変換に相当します。

制限事項

注: 実装上の詳細により 、MapQuickItem内に配置されたアイテムには、MapQuickItem自体ではないparent アイテムが関連付けられます。MapQuickItemはid で参照し、sourceItem 内でanchor を使用することは避けてください。

使用例

以下のスニペットは、マップ上にマーカーを表示するために Image オブジェクトを含む MapQuickItem を示しています。この手法は、MapViewer のサンプルでマップマーカーを表示するために使用されています。

MapQuickItem {
    id: marker
    anchorPoint.x: image.width/4
    anchorPoint.y: image.height

    HoverHandler {
        id: hoverHandler
    }
    TapHandler {
        id: tapHandler
        acceptedButtons: Qt.RightButton
        gesturePolicy: TapHandler.WithinBounds
        onTapped: {
            mapview.currentMarker = -1
            for (var i = 0; i< mapview.markers.length; i++){
                if (marker == mapview.markers[i]){
                    mapview.currentMarker = i
                    break
                }
            }
            mapview.showMarkerMenu(marker.coordinate)
        }
    }
    DragHandler {
        id: dragHandler
        grabPermissions: PointerHandler.CanTakeOverFromItems | PointerHandler.CanTakeOverFromHandlersOfDifferentType
    }

    sourceItem: Image {
        id: image
    }
}

地図上で涙型のピンとして表示されるマーカー

プロパティのドキュメント

anchorPoint : point

このプロパティは、sourceItem 上のどの点が、マップ上の座標と位置合わせされるかを決定します。

autoFadeIn : bool

このプロパティは、非常に低いズームレベルから地図を拡大した際に、アイテムが自動的にフェードインするかどうかを指定します。デフォルトでは、true に設定されています。このプロパティをfalse に設定すると、地図上のアイテムは常にQtQuick::Item::opacity プロパティで指定された不透明度(デフォルトは1.0)で表示されます。

coordinate : coordinate

このプロパティには、MapQuickItem のアンカー座標が格納されます。anchorPoint で指定されたsourceItem 上の点は、マップ上に描画される際、この座標と位置合わせされます。

下の画像には、anchorPoint プロパティの値以外は同一の MapQuickItems が 3 つあります。各項目のanchorPoint の値は、アイテムの上に表示されています。

地図上の3つのマーカーが、異なるアンカーポイントによる影響を示している

sourceItem : object

このプロパティには、マップ上に描画されるソース項目が格納されます。

zoomLevel : real

このプロパティは、MapQuickItem のコンテンツの拡大・縮小の挙動を制御します。具体的には、このプロパティを設定することで、画面上に描画されるオブジェクト(画面ピクセル単位でサイズが決定される)と、マップ上に描画されるオブジェクト(マップのズームレベルに応じてサイズが変化する)のいずれかを選択することができます。

このプロパティのデフォルト値は 0.0 で、これはオブジェクトが画面上に描画されることを意味します。別の値に設定すると、オブジェクトは代わりに地図上に描画されます。 この値(0 以外の場合)は、オブジェクトが 1:1 のスケール(つまり、オブジェクトのピクセルと画面のピクセルが等しい状態)で表示されるズームレベルを指定します。 これより低いズームレベルではオブジェクトは小さく表示され、高いズームレベルでは大きく表示されます。これは、このプロパティがゼロに設定されている場合とは対照的で、その場合はどのズームレベルでも画面上のオブジェクトのサイズは変わりません。

© 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.