QML Map中心在QT5.7中遇到问题

时间:2016-08-22 09:29:56

标签: qml qt5.7

我尝试将Qt 5.6项目升级到5.7并在QML Map上遇到麻烦。我有一个带有这样代码的简单项目:

Plugin {
    id: myPlugin
    name: "osm"
    PluginParameter {
        name: "osm.mapping.host";
        value: "http://a.tile.openstreetmap.org/"
    }
}

Map {
    id: map
    anchors.fill: parent
    plugin: myPlugin;
    center: QtPositioning.coordinate(55.7512, 37.6175)
    zoomLevel: 12
    activeMapType: map.supportedMapTypes[6] //some magic to work
}

它适用于5.6 - 我将地图上的所有地点定义为QtPositioning.coordinate()。它也适用于5.7 - 除了一件事以外我所有的点 - 在5.7我的地图开始于非洲中部而不是我指向Map.center的坐标。

我尝试从QtCreator运行示例 - 它遇到了同样的问题。所以,我很乐意接受任何建议。

1 个答案:

答案 0 :(得分:1)

我尝试以两种不同的方式设置Map.center

<强> 1

Map {
    center: QtPositioning.coordinate(55.7512, 37.6175)
    Component.onCompleted: {
        console.log(map.center);
    }
}

输出结果为:

  

qml:0°0'0.0“,37°37'3.0”E

看起来以这种方式分配坐标会忽略纬度。

<强> 2

 Map {
    center {
        latitude: 55.7512
        longitude: 37.6175
    }
    Component.onCompleted: {
        console.log(map.center);
    }
}

输出结果为:

  

qml:55°45'4.3“N,37°37'3.0”E

因此,以这种方式分配坐标无需解决问题。

至于我,它看起来像一个bug。我创建了一个错误报告here