Здравствуйте!
Подскажите, пожалуйста, каким образом мне получить сигналы от окна модели 3d, если я использую Qt mingw под Windows?
23.08.2019 19:12:52
Здравствуйте! Подскажите, пожалуйста, каким образом мне получить сигналы от окна модели 3d, если я использую Qt mingw под Windows? |
|
|
|
27.08.2019 12:58:44
Здравствуйте!
На данный момент при использовании Qt при разработке ГИС-приложений мы поддерживаем только функции интерфейса MAPAPI (описаны в mapapi.h и не вызывают при работе диалоговых окон). Если необходимо использовать, например, диалог отображения 3D, то можем предложить Вам использовать GIS Toolkit для Windows. |
|
|
|
27.08.2019 14:35:38
Добрый день, Александр! GIS Toolkit для Windows нами приобретен. Как вы предлагаете использовать GIS Toolkit для 3D? Использовать класс QDMap3D? Насколько я понимаю, он доступен только для linux. |
|
|
|
27.08.2019 15:20:39
Мы предлагаем принципиально использовать один из следующих подходов для разработки под Windows:
- GIS Toolkit для Windows (MAPAPI, диалоги, графические компоненты) без использования Qt; - GIS Toolkit для Windows (MAPAPI) с использованием Qt. Исходя из примера исходного кода, Вы используете диалоги из состава GIS Toolkit для Windows вместе с Qt - вариант, который нами на данный момент не поддерживается. |
|
|
|
27.08.2019 16:29:21
Я использую: t3dOpen t3dClose Какие функции позволяют построить 3D модель (без диалогов и графических компонентов) для использования совместно с Qt? |
|
|
|
27.08.2019 17:34:47
Добрый день, Дмитрий!
В смысле вызова функций GIS TollKit по работе с 3D Ваш текст верен. Вы задаете значение сообщения запроса о возможности закрытия parmtask3d.CmStop3d = 1000000; и идентификатор окна документа(карты), из которого запускаете с помощью ф-ции t3dOpen компонент 3D-отображения tparmex.DocHandle = (HWND)ui->DMapView1->winId(); Могу уточнить, что при любом закрытии, в частности нажатие на Х (крест), окно 3D-компонента посылает окну документа(карты) следующее сообщение: ::PostMessage(tparmex.DocHandle, WM_COMMAND, parmtask3d.CmStop3d, 0); Если подаваемый Вами идентификатор окна документа верен, то далее поймать это сообщение - работа созданного Вами окна документа(карты) Вашего приложения. Мы не делали примеры работы с 3D-компонентом с использованием Qt под Windows и, к сожалению, не можем Вам что-либо тут посоветовать. |
|
|
|
28.08.2019 11:25:59
Разобрался. Спасибо! Проблема была в том, что я не в том окне ждал сообщение. Думал, сообщение будет приходить в Handle TASKPARMEX.
Код (может кому-нибудь пригодится):
|
|||
|
|
30.08.2019 09:59:26
Добрый день, Дмитрий!
Рады, что у Вас всё получилось и спасибо за код! Он может помочь другим пользователям. |
||||
|
|
|||
© КБ Панорама, 1991-2024 Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности |