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
    #4

    Hi,

    thanks for replay.
    I added the osm.mapping.host parameter on the "mapviewer" example with the open sea map:
    parameters.insert("osm.mapping.host", "http://tiles.openseamap.org/seamark/");

    But still i dont see the map.
    In the example i go to "MapType" and select "custom URL Map".

    Any idea?

    1 Reply Last reply
    0
    • 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

                                          • Login

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