Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Italian
  4. Problemi con Google Maps e Qml
Forum Updated to NodeBB v4.3 + New Features

Problemi con Google Maps e Qml

Scheduled Pinned Locked Moved Solved Italian
2 Posts 1 Posters 714 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    davidesalvetti
    wrote on 24 Apr 2018, 07:08 last edited by davidesalvetti
    #1

    Buongiorno a tutti,

    onestamente non so più dove sbattere la testa, mi sto portando dietro questo problema da mesi ormai e ora ho bisogno di trovare una soluzione o quanto meno un'alternativa.
    Ho bisogno di avere la mappa satellitare nel mio programma ma:

    • Il programma è stato compilato con MinGw quindi non posso usare QWebEngine, ed è impossibile in questo stadio avanzato passare a MSVC.
    • Ho provato ad utilizzare il QWebKit con Windows 10 e Qt 5.10 ma non funziona (Qui il topic di riferimento).

    Detto ciò l'unica alternativa fattibile sembra sia il QML con il quale sono riuscito, tramite una libreria inserita seguendo questo topic, ad avere una mappa satellitare di google maps funzionante, ma solo in debug mode. Come spiego anche in quest'altro topic infatti, in release mode la mappa non viene mostrata. il che mi porta a pensare che:

    1. è un problema di ApiKey che non riesco a settare evidentemente.
    2. è un problema della libreria esterna(non so se possa essere possibile).

    Questo è il codice in QML:

    import QtQuick 2.7
    import QtQuick.Controls 1.4
    import QtQuick.Window 2.0
    import QtLocation 5.6
    import QtPositioning 5.6
    
    Rectangle {
        id: mainWindow
        width: 512
        height: 512
        visible: true
    
        ListModel{
            id:dummyModel
            ListElement {
                Latitude: 47.212047
                Longitude: -1.551647
                Label: "something"
                Orientation: 0
                Color:"transparent"
            }
       }
    
        Plugin {
            id: googleMaps
            name: "googlemaps" // "mapboxgl", "esri", ...
            // specify plugin parameters if necessary
             PluginParameter {
                 name:"googlemaps.maps.apikey"
                 value:"*******My Api Key*********"
             }
    
        }
    
        Map {
            id: myMap
            anchors.fill: parent
            plugin: googleMaps
            activeMapType: supportedMapTypes[1]
    
            center: QtPositioning.coordinate(59.91, 10.75) // Oslo
            zoomLevel: 14
    
            MapItemView{
                id:dynamicMapObject
                model: dummyModel
                delegate: MapQuickItem {
                    coordinate: QtPositioning.coordinate(Latitude,Longitude)
                    sourceItem:  Text{
                        width: 100
                        height: 50
                        text: model.Label
                        rotation: model.Orientation
                        opacity: 0.6
                        color: model.Color
                    }
                }
            }
    
            MapPolyline {
                    line.width: 3
                    line.color: 'green'
                    path: [
                        { latitude: 59.92, longitude: 10.77 },
                        { latitude: 59.96, longitude: 10.78 },
                        { latitude: 59.99, longitude: 10.76 },
                        { latitude: 59.95, longitude: 10.74 }
                    ]
            }
    
            MapCircle {
              //a static item (fixed real dimension) always at 100m east of the map center
              id:prova
              center: myMap.center.atDistanceAndAzimuth(100,90)
              opacity:0.8
              color:"red"
              radius:30
    
            }
        }
    
        Button{
            id:buttonMap
            text:"Click to add name"
            onClicked: {
                if(buttonMap.text == "Click to add name")
                {
                    buttonMap.text = "Click to cancel name"
                    myMap.activeMapType = myMap.supportedMapTypes[3]
                }
                else
                {
                    buttonMap.text = "Click to add name"
                    myMap.activeMapType = myMap.supportedMapTypes[1]
                }
            }
        }
    
        GroupBox{
               title:"map types"
               ComboBox{
                   model:myMap.supportedMapTypes
                   textRole:"description"
                   onCurrentIndexChanged: myMap.activeMapType = myMap.supportedMapTypes[currentIndex]
               }
         }
    }
    

    Qualcuno ha una soluzione o qualche alternativa per ciò?

    Grazie a tutti in anticipo.

    1 Reply Last reply
    0
    • D Offline
      D Offline
      davidesalvetti
      wrote on 27 Apr 2018, 06:36 last edited by
      #2

      non è un problema di apikey, è un problema di release. La soluzione la trovate qui https://forum.qt.io/topic/90126/problem-with-qml-and-google-maps-plugin/3

      1 Reply Last reply
      0

      1/2

      24 Apr 2018, 07:08

      • Login

      • Login or register to search.
      1 out of 2
      • First post
        1/2
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved