На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

Артем (Автор тем)

Поиск  Пользователи  Правила  Войти
Форум » Пользователи » Артем
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Загрузка карт с WMS/WMTS сервера и отрисовка на собственном контексте
 
Добрый день!

Имеется ГИС Конструктор 12.5.2.055. Astra 1.6

Задача: Загрузка карт с Панорамовского веб-сервера и отрисовка на   drawBackground()   QGraphicsScene.

Использовал пример mapview и mapportal для исследования данного вопроса.

Через ваш компонент   QDMapView в примере mapportal пробовал, в частности, работать с   WMTS#Type=UTMS&IP=[URL=http://mts1.google.com]http://mts1.google.com[/URL].... - все вроде нормально отрисовывает.
Через PaintEvent примера mapview - все плохо - кривые шрифты + искажения карты - сжимается\разжимается при скролле и другие артефакты.
Например, так - [URL=https://disk.yandex.ru/i/stRvoEPa0Ivawg]скриншот[/URL]

Я понимаю, что надо отрисовку в буфер выводить в доп. поток, но мне кажется, что проблема не только в этом.

Если можно, хотелось бы какой-нибудь пример, как это реализовано в   QDMapView. Или просто независимый пример с использованием многопоточной реализации.
Документацию про многопоточность читал, если что.

У нас сейчас решается вопрос выбора ГИС движка для отображения карт. Есть ГИС Конструктор и хотелось бы использовать его, но для этого необходимо разобраться  с этой проблемой.
Изменено: Артем - 21.04.2023 15:44:10
Не собирается проект под linux, Не могу собрать проект написанный под Windows в ОС Linux (Kubuntu 19)
 
Добрый день!
У нас есть два ваших дистрибутива с ключами (Windows-ToolKit 11.9.0  и Astra 1.3 Конструктор 11.6.0 free)
Написан простой пробный проект на ОС Windows с маленькими картами (Подольск) - все работает.
Пытаюсь его же собрать под Linux.
При сборке выдает ошибки типа:
 

In file included from gis/include/mapmacro.h:22,

                from gis/include/maptype.h:26,

                from gis/include/mapgdi.h:21,

                from gis/include/mapapi.h:100,

                from src/apiinteractor.h:7,

                from src/apiinteractor.cpp:1:

gis/include/mapsyst.h:682:6: error: ambiguating new declaration of ‘int wcslen(const WCHAR*)’

 int wcslen(const WCHAR *s);

     ^~~~~~  

In file included from /usr/include/c++/8/cwchar:44,

                from /usr/include/c++/8/bits/postypes.h:40,

                from /usr/include/c++/8/bits/char_traits.h:40,

                from /usr/include/c++/8/string:40,

                from /usr/share/Qt5.12.2/5.12.2/gcc_64/include/QtCore/qbytearray.h:52,

                from /usr/share/Qt5.12.2/5.12.2/gcc_64/include/QtCore/qstring.h:49,

                from /usr/share/Qt5.12.2/5.12.2/gcc_64/include/QtCore/qobject.h:47,

                from /usr/share/Qt5.12.2/5.12.2/gcc_64/include/QtCore/QObject:1,

                from src/apiinteractor.h:4,

                from src/apiinteractor.cpp:1:

/usr/include/wchar.h:222:15: note: old declaration ‘size_t wcslen(const wchar_t*)’

extern size_t wcslen (const wchar_t *__s) __THROW __attribute_pure__;

              ^~~~~~

Если ставлю на Linux скачанную с вашего сайта версию:

[URL=http://www.gisinfo.ru/products/lin_gk_qt.htm]ГИС Конструктор для Qt Designer x64 (версия 12.5.1, Qt 4, Qt 5, платформа x64, ОС Ubuntu 18.04)[/URL]

то ругается - undefined reference to :

mapOpenMtrForMap(hMap,name,0);

mapPictureToPlane(hMap,x,y);

mapPlaneToGeo(hMap,x,y);

mapGeoToPlane(map,x,y);

и т.д.

Подскажите, могу ли я собирать под Linux свои проекты, написанные на Windows?

Страницы: 1



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности