Есть ли у карты в Qt свойство, поэтому оно не перемещается по центру, если я перемещаю курсор мыши в произвольное место на карте и пытаюсь изменить уровень масштабирования колесом мыши? Потому что по умолчанию карта увеличивает масштаб, но перемещает существующий центр в направлении расположения курсора мыши (пример на рисунке ниже; если курсор находится на показанной позиции, и мы пытаемся изменить масштаб, изображение геотега будет перемещаться в направлении стрелки). Мне просто нужно увеличить масштаб прямо от обозначенного центра карты, независимо от расположения курсора мыши.
Описание карты:
https://doc -snapshots.qt.io / qt5-5.9 / QML-qtlocation-map.html
QML-код
import QtQuick 2.0
import QtQuick.Window 2.0
import QtLocation 5.6
import QtPositioning 5.6
Item{
id: itemControl
objectName: "itemControl"
width: 512
height: 512
visible: true
Plugin {
id: mapPlugin
PluginParameter { name: "osm.useragent"; value: "usermap" }
name: "esri"
}
Map {
id:map
gesture.enabled: true
gesture.acceptedGestures: MapGestureArea.PinchGesture | MapGestureArea.PanGesture
objectName: "map"
anchors.fill: parent
bearing: 0
width: 512
height: 512
plugin: mapPlugin
center {
latitude: 45.525180446
longitude: 13.5575992170
}
zoomLevel: 15
//If user doubleclicks on map update coordinates of pixel to coordinates on UI
signal qmlSignalUpdateLat(string msg)
signal qmlSignalUpdateLon(string msg)
MouseArea
{
id: mousearea
hoverEnabled: true
anchors.fill: parent
acceptedButtons: Qt.LeftButton
onDoubleClicked: {
map.center.latitude = map.toCoordinate(Qt.point(mouseX,mouseY)).latitude
map.center.longitude = map.toCoordinate(Qt.point(mouseX,mouseY)).longitude
map.qmlSignalUpdateLat(map.center.latitude)
map.qmlSignalUpdateLon(map.center.longitude)
}
}
function updateMap(lat,lon,bear){
map.center.latitude = lat;
map.center.longtitude = lon;
map.bearing = bear;
}
}
}