Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Open source map plug in for QML
Forum Updated to NodeBB v4.3 + New Features

Open source map plug in for QML

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
34 Posts 7 Posters 15.5k Views 3 Watching
  • 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.
  • michaelLM Offline
    michaelLM Offline
    michaelL
    wrote on last edited by
    #5

    Hi vladstelmahovsky,

    how can i use your googlemap plugin in the mapviewer example?

    1 Reply Last reply
    0
    • T Offline
      T Offline
      TonyN
      wrote on last edited by
      #6

      @vladstelmahovsky I copied the libqtgeoservices_googlemaps.so into plugins/geoservices among others (osm, mapbox, here). Then I run the sample app MapViewer. MapViewer see the plugin, but it come back say "Set googlemaps.map.apikey with google maps application key, supporting static maps."
      Where do I set this apikey?
      How do I obtain the key? Does Google issue it?

      Thanks

      1 Reply Last reply
      0
      • T Offline
        T Offline
        TonyN
        wrote on last edited by
        #7

        Nevermind, I solved the problem.

        1 Reply Last reply
        0
        • V vladstelmahovsky

          @michaelL you cat take a look at my plugins here https://github.com/vladest

          T Offline
          T Offline
          TonyN
          wrote on last edited by
          #8

          @vladstelmahovsky Your plugin works really cool though. I probably will look into source code and make my own to load map locally from file or database

          V 1 Reply Last reply
          0
          • T TonyN

            @vladstelmahovsky Your plugin works really cool though. I probably will look into source code and make my own to load map locally from file or database

            V Offline
            V Offline
            vladstelmahovsky
            wrote on last edited by vladstelmahovsky
            #9

            @TonyN actually, QtLocation itself handles caching of the data and you can provide your own cache mechanisms, afaik

            1 Reply Last reply
            2
            • michaelLM Offline
              michaelLM Offline
              michaelL
              wrote on last edited by
              #10

              @TonyN

              where did you found this file "libqtgeoservices_googlemaps.so" and the "plugins" folder?
              I couldnt fin any plugins folder on the Qt installation directory.

              1 Reply Last reply
              0
              • michaelLM Offline
                michaelLM Offline
                michaelL
                wrote on last edited by
                #11

                @TonyN i found one plugins folder here C:\Qt\5.6\mingw49_32\plugins\geoservices
                But inside there is only .dll files.

                1 Reply Last reply
                0
                • SGaistS Offline
                  SGaistS Offline
                  SGaist
                  Lifetime Qt Champion
                  wrote on last edited by
                  #12

                  @michaelL you have to build and install the plugin yourself.

                  Interested in AI ? www.idiap.ch
                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                  1 Reply Last reply
                  0
                  • michaelLM Offline
                    michaelLM Offline
                    michaelL
                    wrote on last edited by
                    #13

                    @SGaist so i build it and install it insite mingw32:

                    qmake googlemaps.pro
                    mingw32-make
                    mingw32-make install

                    And when i ran the example the plugin was there but the map didnt came up and gave me this erro message:
                    QGeoTileRequestManager: Failed to fetch tile (543,298,10) 5 times, giving up. Last error message was: 'Set googlemaps.maps.apikey with google maps application key, supporting static maps'

                    Any idea?

                    V 1 Reply Last reply
                    0
                    • michaelLM Offline
                      michaelLM Offline
                      michaelL
                      wrote on last edited by
                      #14

                      @vladstelmahovsky i saw you had the same issue.
                      i generate my google api key now but i dont know where to put it.
                      How did you solve it?

                      1 Reply Last reply
                      0
                      • michaelLM michaelL

                        @SGaist so i build it and install it insite mingw32:

                        qmake googlemaps.pro
                        mingw32-make
                        mingw32-make install

                        And when i ran the example the plugin was there but the map didnt came up and gave me this erro message:
                        QGeoTileRequestManager: Failed to fetch tile (543,298,10) 5 times, giving up. Last error message was: 'Set googlemaps.maps.apikey with google maps application key, supporting static maps'

                        Any idea?

                        V Offline
                        V Offline
                        vladstelmahovsky
                        wrote on last edited by
                        #15

                        @michaelL well, have you added PluginParameter {} to your google Plugin {} instance with googlemaps.maps.apikey ?

                        1 Reply Last reply
                        0
                        • michaelLM Offline
                          michaelLM Offline
                          michaelL
                          wrote on last edited by
                          #16

                          @vladstelmahovsky no where do i set this parameter? On the plugin or on the mapviewer example?

                          V 1 Reply Last reply
                          0
                          • michaelLM michaelL

                            @vladstelmahovsky no where do i set this parameter? On the plugin or on the mapviewer example?

                            V Offline
                            V Offline
                            vladstelmahovsky
                            wrote on last edited by
                            #17

                            @michaelL in the mapviewer. something like this:
                            Plugin {
                            id: gmapsPlugin
                            name: "googlemaps"
                            locales: "en_EN"
                            PluginParameter {
                            name: "googlemaps.useragent"
                            value: "<your user agent>"
                            }
                            PluginParameter {
                            name: "googlemaps.route.apikey"
                            value: "<put your api key here>"
                            }
                            PluginParameter {
                            name: "googlemaps.maps.apikey"
                            value: "<put your api key here>"
                            }
                            PluginParameter {
                            name: "googlemaps.maps.tilesize"
                            value: "256"
                            }
                            }

                            1 Reply Last reply
                            1
                            • michaelLM Offline
                              michaelLM Offline
                              michaelL
                              wrote on last edited by
                              #18

                              @vladstelmahovsky On the mapviewer example i tryied on the QML File:

                              Plugin{
                              id: myPlugin
                              name: "googlemaps"
                              PluginParameter { name: "googlemaps.maps.apikey "; value: "https://maps.googleapis.com/maps/api/js?key=.............; }
                              }

                              Where "......" my googlemap key is.

                              But it didnt worked.

                              V 1 Reply Last reply
                              0
                              • michaelLM michaelL

                                @vladstelmahovsky On the mapviewer example i tryied on the QML File:

                                Plugin{
                                id: myPlugin
                                name: "googlemaps"
                                PluginParameter { name: "googlemaps.maps.apikey "; value: "https://maps.googleapis.com/maps/api/js?key=.............; }
                                }

                                Where "......" my googlemap key is.

                                But it didnt worked.

                                V Offline
                                V Offline
                                vladstelmahovsky
                                wrote on last edited by
                                #19

                                @michaelL value shold be ONLY api key. not full url. just api key

                                1 Reply Last reply
                                0
                                • michaelLM Offline
                                  michaelLM Offline
                                  michaelL
                                  wrote on last edited by
                                  #20

                                  @vladstelmahovsky I tryied the api key only but i got the same error.
                                  Did you do anything else?

                                  V 1 Reply Last reply
                                  0
                                  • michaelLM michaelL

                                    @vladstelmahovsky I tryied the api key only but i got the same error.
                                    Did you do anything else?

                                    V Offline
                                    V Offline
                                    vladstelmahovsky
                                    wrote on last edited by
                                    #21

                                    @michaelL no, I didnot, but the error above indicated that the key was not set. Since you have soreces, you can add debug messages to see where the problem is

                                    1 Reply Last reply
                                    0
                                    • michaelLM Offline
                                      michaelLM Offline
                                      michaelL
                                      wrote on last edited by
                                      #22

                                      @vladstelmahovsky the Plugin parameter is not working on the mapviewer.qml and i added this line in main.c and it works:
                                      parameters.insert("googlemaps.maps.apikey", "<your API Key>");

                                      V 1 Reply Last reply
                                      0
                                      • michaelLM michaelL

                                        @vladstelmahovsky the Plugin parameter is not working on the mapviewer.qml and i added this line in main.c and it works:
                                        parameters.insert("googlemaps.maps.apikey", "<your API Key>");

                                        V Offline
                                        V Offline
                                        vladstelmahovsky
                                        wrote on last edited by
                                        #23

                                        @michaelL where you have created your QtLocation plugin instance? c++ or QML?

                                        1 Reply Last reply
                                        0
                                        • michaelLM Offline
                                          michaelLM Offline
                                          michaelL
                                          wrote on last edited by
                                          #24

                                          @vladstelmahovsky i got it to work with the placemap example under QML:
                                          Plugin {
                                          id: myPlugin
                                          name: "googlemaps"
                                          //specify plugin parameters if necessary
                                          //PluginParameter {...}
                                          //PluginParameter {...}
                                          //...
                                          PluginParameter { name:"googlemaps.maps.apikey"; value: "<your api key>"}
                                          }

                                          Map {
                                              id: map
                                              anchors.fill: parent
                                              plugin: myPlugin;
                                              zoomLevel: 13
                                              activeMapType: supportedMapTypes[1]
                                          }
                                          

                                          Do you know how can i add the openseamap marks as an overlay on your plugin?
                                          Here is the wiki site http://wiki.openseamap.org/wiki/OpenSeaMap-dev:Server
                                          and here is the tile server for sea marks:
                                          Sea Marks alpha.openseamap.org http://t1.openseamap.org/seamark/{z}/{x}/{y}.png

                                          Any idea?

                                          V 1 Reply Last reply
                                          0

                                          • Login

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