【QT學習】qml中地圖Map去掉mapbox標籤

(1)背景:在使用qml加載mapboxgl插件來顯示地圖的時候,會出現左下角的地圖標籤,如何去掉

 

在Map中有一個要素:copyrightsVisible代表版權,置成false即可。

Map {
    id:map
    anchors.fill: parent
    color: "black"
    copyrightsVisible:false
   plugin: Plugin {
        name: "mapboxgl"
    }
}

(2)背景:如何設置地圖的樣式:

 (2.1)可以使用qt自帶的樣式:通過mainMap.activeMapType設置當前地圖正在顯示的地圖底圖:例如

Map
{
    id:map
    zoomLevel: 12
    center: QtPositioning.coordinate(60.170448, 24.942046) // Helsinki
    copyrightsVisible:false
    plugin: Plugin { name: "mapboxgl" }
    
    Component.onCompleted:
    {
        map.activeMapType = map.supportedMapTypes[7];//設置當前地圖底圖是數組的第8個元素
    }
}

上述代碼表示設置底圖是第8個元素,一般地圖支持的類型,即通過打印map.supportedMapTypes有:

{
"0":{"objectName":"","style":1,"name":"mapbox://styles/mapbox/streets-v10","description":"Streets","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"1":{"objectName":"","style":1,"name":"mapbox://styles/mapbox/basic-v9","description":"Basic","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"2":{"objectName":"","style":1,"name":"mapbox://styles/mapbox/bright-v9","description":"Bright","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"3":{"objectName":"","style":4,"name":"mapbox://styles/mapbox/outdoors-v10","description":"Outdoors","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"4":{"objectName":"","style":2,"name":"mapbox://styles/mapbox/satellite-v9","description":"Satellite","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"5":{"objectName":"","style":5,"name":"mapbox://styles/mapbox/satellite-streets-v10","description":"Satellite Streets","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"6":{"objectName":"","style":7,"name":"mapbox://styles/mapbox/light-v9","description":"Light","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"7":{"objectName":"","style":7,"name":"mapbox://styles/mapbox/dark-v9","description":"Dark","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"8":{"objectName":"","style":6,"name":"mapbox://styles/mapbox/navigation-preview-day-v2","description":"Navigation Preview Day","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"9":{"objectName":"","style":6,"name":"mapbox://styles/mapbox/navigation-preview-night-v2","description":"Navigation Preview Night","mobile":false,"night":true,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"10":{"objectName":"","style":9,"name":"mapbox://styles/mapbox/navigation-guidance-day-v2","description":"Navigation Guidance Day","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},
"11":{"objectName":"","style":9,"name":"mapbox://styles/mapbox/navigation-guidance-night-v2","description":"Navigation Guidance Night","mobile":false,"night":true,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}}
}

所以map.supportedMapTypes[7]代表的是

"7":{"objectName":"","style":7,"name":"mapbox://styles/mapbox/dark-v9","description":"Dark","mobile":false,"night":false,"cameraCapabilities":{"objectName":"","minimumZoomLevel":1,"maximumZoomLevel":21,"minimumTilt":0,"maximumTilt":60,"minimumFieldOfView":36.87,"maximumFieldOfView":36.87},"metadata":{"isHTTPS":true}},

(2.2)可以自定義樣式:通過設置參數PluginParameter自定義一個json或者在線的style。

Map
{
    id:map
    zoomLevel: 12
    center: QtPositioning.coordinate(60.170448, 24.942046) // Helsinki
    copyrightsVisible:false
    plugin: Plugin { 
        name: "mapboxgl" 
        PluginParameter {
            name: "mapboxgl.mapping.additional_style_urls"
            value: "http://XXXXXXXXXXXstyle.json"
        }
        PluginParameter {
            name: "mapboxgl.mapping.additional_style_urls"
            value: "mapbox://styles/mapbox/dark-v9"
        }
    }
    
    Component.onCompleted:
    {
        map.activeMapType = map.supportedMapTypes[0];//設置當前地圖底圖是數組的第8個元素
    }
}

一般情況下添加的新的style均插在原來的最開始位置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章