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

Константин Ганюшин (Все сообщения пользователя)

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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 27 След.
Проблема с функцией MAPAPI BuildPreviewImageFromAnySxfUn
 
Здравствуйте!

Данная проблема исправлена - обновленную версию ГИС Конструктор планируется передать Вам в ближайшее время.
Функции отображения трёхмерных карт
 

Провели проверку в Ubuntu 20.04 – подложка из карты отрисовалась корректно.
Для работы приложения должно быть достаточно установленных библиотек Qt версии выше 5.4 и драйверов видеокарты.

Для диагностики, пожалуйста, активируйте диагностический лог (mapOpenDiagnostics) после вызова конструктора QDMapView в main.cpp примера и повторите создание модели.
Полученный лог можно прислать на почту [URL=mailto:panorama@gisinfo.ru]panorama@gisinfo.ru[/URL] с ссылкой на сообщение с форума.

Для отображения 3D-модели нужен подготовленный классификатор с установленными 3D-видами для объектов и файл настройки отображения объектов (.p3d).
Карта кадастра из состава инсталляции (/usr/share/gisdesigner/examples/Data/Планы городов/Cadastre) содержит необходимые настройки и может использоваться для демонстрации.

Для отображения всех объектов на данной карте можно при инициализации 3D-модели в её параметрах выставить флаг видимости всех моделей на карте (ViewRange = 1).

Отображение рамки вокруг подписи с помощью структуры IMGDRAW
 

Здравствуйте!

На сайте доступна обновленная версия ГИС Конструктор, в которой добавлена поддержка отображения рамки с прозрачным фоном подписи. Приводим код для демонстрации нанесения данного объекта:
[CODE] HMAP hMap = mapOpenAnyData(WTEXT("/tmp/Noginsk/Noginsk.sit"));
 assert(hMap);

 double x = 6198000;
 double y = 7448000;

 HOBJ hobj = mapCreateSiteObject(hMap, hMap, IDDOUBLE2, 1);
 mapRegisterDrawObject(hobj, 0, LOCAL_TITLE);
 mapAppendPointPlane(hobj, x, y);

 IMGTEXT parm;
 parm.Color = RGB(0, 0, 255);
 parm.BkgndColor = IMGC_TRANSPARENT2; // IMGC_TRANSPARENT2 - рисовать рамку без фона
 parm.Height = PIX2MKM(30);
 parm.Weight = FW_NORMAL;
 parm.Outline = 2;
 parm.Interval = 50;
 parm.Align = FA_RIGHT;
 parm.Service = 0;
 parm.Wide = UNIW_NORMAL;
 parm.Horizontal = 0;
 parm.Italic = 0;
 parm.Underline = 0;
 parm.StrikeOut = 0;
 parm.Type = 0;
 parm.CharSet = RUSSIAN_CHARSET;
 parm.Flag = 0;
 mapAppendDraw(hobj, IMG_TEXT, (char *)&parm);
 mapPutTextUn(hobj, WTEXT("Sign text"), 0);
 mapCommitObject(hobj);
 mapFreeObject(hobj);

 mapCloseData(hMap);[/CODE]

Функции отображения трёхмерных карт
 

Здравствуйте!
На сайте доступна обновленная версия ГИС Конструктор, в состав которой включен пример отображения 3D-модели – map3d.

Проблема с функцией LoadMtwToTiffConverter
 

Здравствуйте!
На сайте доступна обновленная версия ГИС Конструктор с исправлением данного поведения.
Пожалуйста, протестируйте и сообщите нам.

Экспорт объектов из классификатора, Экспорт объектов в общепринятые форматы (SVG, PNG, KML)
 

Здравствуйте!

Для экспорта изображения знака классификатора можно выполнить с помощью следующих действий:
- создать временную карту (пункт 3.8.3 Открытие и создание пользовательских карт [URL=https://gistoolkit.com/download/doc/gisdesigner_prog.pdf]Руководства программиста[/URL]);
- нанести один или несколько знаков на созданную карту(пункт 3.8.16 Редактирование объектов Руководства программиста);
- выполнить экспорт полученной карты в обменный формат.

Для экспорта можно воспользоваться одной из указанных функций:
- SVG: SaveMapToSVG() (пример использования можно посмотреть в составе [URL=https://gisinfo.ru/download/?id=279]sdk14 для Windows[/URL] в файле mapexam/mapexam87.cpp);
- PNG: LoadDocumentImageToPictureFile() (mappicex.h);
- KML: mapSaveMapToKmlEx() (gmlapi.h);
- JSON: gmlGetFeaturiesList() (gmlapi.h) (пример использования можно посмотреть в sdk14, файл mapacces/tests/test_gml.cpp).

Для PNG можно воспользоваться альтернативным способом - нарисовать нужный объект классификатора в память и с помощью QImage выполнить сохранение файл, как, например, в данном [URL=https://www.gisweb.ru/forum/messages/forum7/topic2013/message78929/2013#message78929]примере[/URL] и в Руководстве программиста пункт 3.8.7.
Для запроса метаданных из классификатора можно воспользоваться функциями rscapi.h.
Работа с классификатором описывается в пункте 3.8.20 Руководства программиста.  

Ошибка построения MTW при использовании mapMessageEnable(0)
 

При запуске приложения с включенным выводом сообщений об ошибках на экран (mapMessageEnable(1)) в отдельном потоке произойдет вывод диалога Qt не из главного графического потока.
Данное поведение приведет к прекращению работы приложения, потому что вывод диалоговых окон не из графического потока является некорректным с точки зрения использования библиотек Qt.

На текущий момент возможны следующие варианты изменений в ГИС-приложении:
- отключить вывод сообщений с помощью вызова mapMessageEnable(0);
- установить собственную функцию вывод сообщения об ошибках, не использующую диалоговые окна Qt, с помощью функции mapSetMessageBoxCall() (mapapi.h).
Пример использования собственной функции вывода сообщения об ошибках можно посмотреть в примере mapview из состава инсталляции.

Автоматическое определение работы в потоке и отключения вывода сообщений c помощью диалогов Qt будет рассмотрено в одной из следующих версий ГИС Конструктор.

Изменено: Константин Ганюшин - 12.09.2022 11:41:58 (уточнил пример)
Необходимо изменить mouseWheelEvent компонент QDMapView
 
Здравствуйте!

Реализовать обработку колесика мыши в ГИС-приложении можно с помощью переопределения обработчика wheelEvent() в разрабатываемом приложении.
В следующих версиях ГИС Конструктор сигнал обработки колесика мыши будет добавлен в компонент.
Дополнительно сообщаем, что исходные тексты компонента(/usr/share/gisdesigner/examples/Sdk/qmapcomponent) входят в состав инсталляции и доступны для ознакомления.

Изменено: Константин Ганюшин - 12.09.2022 11:43:50
Проблема с функцией MAPAPI BuildPreviewImageFromAnySxfUn
 
Здравствуйте!

Для экспорта в формат KMZ можно воспользоваться функцией picexSaveRswImageToKmz(mappicex.h):
[CODE]// Сохранить изображение растра в файл формата KMZ
//    Файл KMZ представляет собой ZIP-архив пирамиды растровых тайлов
//    в форматах JPEG или PNG
//    Входные параметры:
//    handle         - диалог сопровождения процесса обработки;
//    inputFileName - имя исходного файла RSW
//    outputFileName - имя выходного файла KMZ
//    compress       - коэффициент качества (0-100)
//                     изображения при сжатии по методу JPEG
//    При ошибке функция возвращает ноль
//
//    Диалогу (handle) из процесса посылаются сообщения:
//    - (WM_PROGRESSBAR) Извещение об изменении состония процесса
//       WPARAM - текущее состоние процесса в процентах (0% - 100%)
//       Если функция-отклик возвращает WM_PROGRESSBAR, то процесс завершается.
_PICIMP long int _PICAPI picexSaveRswImageToKmz(HMESSAGE handle,
                            const WCHAR* inputFileName,
                            const WCHAR* outputFileName,
                            int compress); [/CODE]
Ошибка построения MTW при использовании mapMessageEnable(0)
 
Здравствуйте!

Спасибо за предоставленный пример. Провели проверку на крайних версиях ГИС Конструктор 11 и 14  – создание матрицы в отдельном потоке происходит без зависания.
Поскольку техническая поддержка 11 версии была прекращена – рекомендуем использовать актуальную версию продукта.
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 27 След.



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

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