Михаиллл
June 26, 2019, 12:13 a.m.

Как сделать яндекс карту с помощью QML

Добрый день.

Скажите пожалуйста, как сделать яндекс карту с помощью QML?

3

Do you like it? Share on social networks!

10
Алексей Внуков
  • June 26, 2019, 12:16 a.m.

только через webengine, прямого апи у Яндекса нет, вроде что-то есть у гугла, сам только начал интересоваться этим вопросом

    Михаиллл
    • June 26, 2019, 10:25 a.m.

    Печалька. А в таком случае можно добовлять свои маркеры на карту?

      o
      • June 26, 2019, 10:57 a.m.
      • (edited)

      посмотрите в сторону open street maps

      p.s. 60 секунд в гугле
      Использование Qt для работы с Google Maps API

      Отображение yandex maps в Qt приложении

        Михаиллл
        • June 26, 2019, 12:16 p.m.

        В Qt есть собственный класс Map QML , предоставляющий карты. Но с ней получается какойто баг, пример от QT работает, а если в своем проекте сделал так, то карта не грузится:

        import QtQuick 2.12
        import QtQml 2.12
        import QtQuick.Window 2.12
        import QtQuick.Controls 2.12
        import QtPositioning 5.12
        import QtLocation 5.13
        
        Item {
            width: 400
            height: 650
            visible: true
        
            Plugin {
                id: mapPlugin
                name: "osm" // "mapboxgl", "esri", ...
                // specify plugin parameters if necessary
                // PluginParameter {
                //     name:
                //     value:
                // }
            }
        
            Map {
                anchors.fill: parent
                plugin: mapPlugin
                //center: QtPositioning.coordinate(59.91, 10.75) // Oslo
                zoomLevel: 14
        
                Text {
                    id: element
                    x: 103
                    y: 51
                    width: 180
                    height: 75
                    text: qsTr("Page with my map")
                    font.pixelSize: 20
                }
            }
        }
        
        
        
          Алексей Внуков
          • June 26, 2019, 12:57 p.m.

          так если посмотреть в пример, то там в PluginParameter указаны параметры для загрузки osm, а так приложение даже не понимает откуда грузиться. на хабре есть интересная статья с обьяснениями тыц

            Михаиллл
            • June 26, 2019, 8:24 p.m.
            • (edited)

            Все же нужны именно яндек карты . А что-бы ими воспользоваться, нужен ключ API.
            Нужно выбирать ключ для MapKit и с помощью MapKit делать карту?
            Или вообще ключ не нужен и в webengine отображать страничку яндекс карт?

              Михаиллл
              • June 26, 2019, 8:24 p.m.
              • (edited)

              Все же нужны именно яндек карты . А что-бы ими воспользоваться, нужен ключ API.
              Нужно выбирать ключ для MapKit и с помощью MapKit делать карту?
              Или вообще ключ не нужен и в webengine отображать страничку яндекс карт?

                Михаиллл
                • June 26, 2019, 10:13 p.m.

                Таке попробовал сделать так, но не работает вы вырубается при загрузкею.
                Может быть вы знаете, как это можно исправить?

                //import QtWebEngine 1.9
                import QtWebView 1.13
                
                
                
                Item {
                    width: 400
                    height: 650
                    visible: true
                    /*WebEngineView {
                        anchors.fill: parent
                        //url: "https://www.qt.io"
                        url: "https://m.yandex.ru/maps"
                    }*/
                    WebView {
                        anchors.fill: parent
                        //url: "https://www.qt.io"
                        url: "https://m.yandex.ru/maps"
                    }
                
                }
                
                  Михаиллл
                  • June 26, 2019, 10:13 p.m.

                  Таке попробовал сделать так, но не работает вы вырубается при загрузкею.
                  Может быть вы знаете, как это можно исправить?

                  //import QtWebEngine 1.9
                  import QtWebView 1.13
                  
                  
                  
                  Item {
                      width: 400
                      height: 650
                      visible: true
                      /*WebEngineView {
                          anchors.fill: parent
                          //url: "https://www.qt.io"
                          url: "https://m.yandex.ru/maps"
                      }*/
                      WebView {
                          anchors.fill: parent
                          //url: "https://www.qt.io"
                          url: "https://m.yandex.ru/maps"
                      }
                  
                  }
                  
                    Михаиллл
                    • June 27, 2019, 2:15 p.m.

                    Нашел такой пример с картой OpenStreetMap, но на ней не отображены номера домов. Вы не знаете, как можно добавить номера домов?

                      Comments

                      Only authorized users can post comments.
                      Please, Log in or Sign up
                      • Last comments
                      • AK
                        April 24, 2025, 12:04 p.m.
                        UPD: Переписал логику воспроизведения через стороннюю библиотеку BASS. Там выбрать можно
                      • Evgenii Legotckoi
                        April 16, 2025, 5:08 p.m.
                        Благодарю за отзыв. И вам желаю всяческих успехов!
                      • IscanderChe
                        April 12, 2025, 5:12 p.m.
                        Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
                      • AK
                        April 1, 2025, 11:41 a.m.
                        Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
                      • Evgenii Legotckoi
                        March 9, 2025, 9:02 p.m.
                        К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…