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

Выделение нескольких объектов на карте

Поиск  Пользователи  Правила  Войти
Форум » Linux » Средства разработки ГИС-приложений для Linux
Страницы: 1
RSS
Выделение нескольких объектов на карте
 
Добрый день!

Не совсем понятно, как выделить несколько точек на карте. Минимальный код представлен ниже. Выделяется только последняя точка. Насколько я понял, точки просто выделяются последовательно и для каждого нового элемента выделение сбрасывается. Если это так, то как их оставить выделенными?
Использую ГИС Конструктор для Qt Designer, версия 12.

Код
HOBJ hObj = mapCreateObject(map_handle);

HSELECT hSelect = mapCreateMapSelectContext(map_handle);

int flag = WO_FIRST;

while (mapSeekViewObject(map_handle, hObj, hSelect, flag) != 0)
{
    foreach (gis_id current_id, id_vector)
    {
       ui->map_obj->SetStyle(3);
    }

    // Перейти к следующему объекту
    flag = WO_NEXT;
}
 
А между тем уже почти неделя прошла... Переформулирую вопрос - таким образом объекты вообще не выделить и нужно использовать что-то вроде SelectSeekArea? Или есть способ?
 
Здравствуйте!

Есть несколько способов выделения множества объектов:
- При помощи интерфейса mapapi. Пример можно посмотреть в исходных текстах библиотеки компонентов QDMapAnimator, в файле qdmanimator.cpp. В примере создается контекст условий выбора необходимых объектов, после выполняется рисование с помощью функции mapPaintSelectToXImage.
- При помощи библиотеки компонентов. Пример можно посмотреть в данном сообщении на форуме.

Спасибо за ожидание.

Страницы: 1
Читают тему (гостей: 1)



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

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