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

Проблема с габаритами флагов из флагштока

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

ГИС Конструктор для Qt Designer x64 (версия 11.10.5), ОС Astra Linux
ГИС "Оператор" для силовых структур (версия 11.13.7), ОС Astra Linux

При попытке реализовать функционал формирования флагштоков, аналогично Редактирование\Нанесение КП из ГИС Оператор, столкнулся с проблемой:
После заполнения метрики для знаков ПУ из классификатора operator.rsc, их габариты (mapObjectViewFrameEx и подобные), в ряде случаев, не пересекаются с изображением. В результате этого их трудно (невозможно) выбрать мышкой.



С уважением,
Матвеев П.В.
 
Приветствую!

Удалось ли воспроизвести данное поведение? И можно ли с этим что-то сделать?

С уважением,
Матвеев П.В.
 
Для такой задачи есть другие функции.
Например:
Код
 // Определяет габариты объектов (точечных, векторных и подписей) с учетом текущих  // 17/11/17
 // условий отображения (см. функции mapGetRealShowScale/mapSetRealShowScale и
 // mapGetScaleMethod/mapSetScaleMethod)
 // Для каждого подобъекта подписи создается прямоугольный подобъект,
 // ограничивающий текст подписи
 // info    - исходный объект
 // contour - объект, в который заносятся габариты исходного объекта
 // hPaint  - идентификатор контекста отображения для многопоточного вызова функции 
 //           отображения (может быть ноль)
 // При ошибке возвращает 0

_MAPIMP long int _MAPAPI mapGetObjectContour(HOBJ info, HOBJ contour, HPAINT hPaint);

  // Запросить размеры в микронах и свойства экранного вида объекта
  // hRsc - идентификатор классификатора карты
  // incode - порядковый номер объекта (с 1)
  // IMAGESIZE -  структура входных данных  (см. maptype.h)
  // Строка string длиной length задается для
  // определения горизонтального размера подписи
  // При ошибке возвращает ноль

_MAPIMP  long int _MAPAPI mapGetRscImageSize(HRSC hRsc, long int incode, IMAGESIZE * imagesize,
                                             long int length = 0,char * string = 0);

  // Запросить размеры в микронах и свойства принтерного вида объекта
  // hRsc - идентификатор классификатора карты
  // incode - порядковый номер объекта (с 1)
  // IMAGESIZE -  структура входных данных  (см. maptype.h)
  // Строка string длиной length задается для
  // определения горизонтального размера подписи
  // При ошибке возвращает ноль

_MAPIMP  long int _MAPAPI mapGetRscPrnImageSize(HRSC hRsc, long int incode, IMAGESIZE * imagesize,
                                                long int length = 0,char * string = 0);


 // Запросить габаритную рамку изображения объекта (точечный, векторный)
 // с учетом поворота объекта (IMAGEFRAME - см. maptype.h)
 // Все размеры в микронах на "бумажном" изображении (в базовом масштабе)
 // относительно первой точки метрики объекта в картографической системе
 // Для пересчета полученных координат в метры на местности нужно
 // их поделить на 1 000 000, умножить на базовый масштаб карты
 // и добавить координаты первой точки метрики
 // number - номер функции отображения (mapgdi.h)
 // param  - параметры отображения (mapgdi.h)
 // angle  - угол поворота объекта в радианах по часовой стрелке
 // При ошибке возвращает ноль

_MAPIMP long int _MAPAPI mapGetRscMarkFrame(HRSC hRsc, long int number, const char * param, double angle, IMAGEFRAME * imageframe);

 
Приветствую!

А каким образом эти методы помогут в поиске объектов в точке, в случае если точка находится в пределах полотнища верхнего флага? При поиске, как Вы уже неоднократно говорили происходит проверка пересечения области поиска с областью габаритов знака. В данном случае, как на картинке, пересечение пустое, и этот флаг никогда не находится!

С уважением,
Матвеев П.В.
 
Пришлите, пожалуйста, нам карту с этими знаками. Мы проверим проблему с габаритами.
 
Приветствую!

Отправил карту на почту kbpanorama@yandex.ru

С уважением,
Матвеев П.В.
 
Приветствую!

Спасибо!
ГИС Конструктор для Qt Designer x64 (версия 12.2.0), ОС Astra Linux проблема устранена.

С уважением,
Матвеев П.В.
Страницы: 1
Читают тему (гостей: 1)



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

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