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

Некорректное поведение метода mapRegisterObjectByKey на некоторых знаках

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

Используем:
  • ГИС Конструктор для Qt Designer x64 (версия 12.5.0), ОС Astra Linux,
  • Классификатор operator.rsc из состава ГИС Оператор 12, ОС Astra Linux
При создании знака "Противонанк. мин. поле дист (312625003141)" через вызов mapRegisterObjectByKey на карте создается знак "Смеш. мин. поле дист (3126250031412)".
Код для воспроизведения:
Код
#include <QString> 
#include <QDebug> 
#include "mapapi.h" 
#include "sitapi.h" 

int main() { 

    QString siteName("/tmp/test.sitx");
    QString rscName("/usr/Operator12/operator.rsc");

    CREATESITEUN cs; 
    memset((void*) &cs, 0, sizeof(cs)); 
    cs.Length = sizeof(CREATESITEUN); 
    cs.EllipsoideKind = 9; 
    cs.MapType = 16; 

    HMAP hsite = mapCreateSiteUn((const WCHAR*) siteName.constData(), 
        (const WCHAR*) rscName.constData(), &cs);
    mapSetRealShowScale(hsite, mapScaleToRoundScaleEx(hsite,200000.));
    if (hsite !=0) { 
        double x = 6170046;
        double y = 7409328;
        HOBJ hobj = mapCreateSiteObject(hsite, hsite, IDDOUBLE2, 0);
        const char* original = "312625003141";
         if (mapRegisterObjectByKey(hobj, original) != 0) {
             int size = 3000;
             mapAppendPointPlane(hobj,x,y,0);
             mapAppendPointPlane(hobj,x - size,y,0);
             mapCommitObject(hobj);
         } else {
             qDebug() << "No sign ";
         }
         const char * key = mapObjectRscKey(hobj);
         if(strcmp(key, original)) {
             qDebug() << "The original key " << original << " is not equals " << key;
         }
        mapFreeObject(hobj);
        mapCloseData(hsite);
    } else { 
        qDebug() << "Wrong site"; 
    } 
} 
P.S. Изменение ключа нанесенного знака также наблюдается еще на 64 знаках.

С уважением,
Александр.
 
Здравствуйте!

Ошибку подтвердили и исправили - изменения войдут в следующую версию ГИС Конструктор.
Спасибо!
 
Здравствуйте!

На сайте доступна новая версия ГИС Конструктор для Astra Linux SE c внесенными исправлениями.

Спасибо!
 
Здравствуйте!

В 12.6.1 метод работает корректно, спасибо!

С уважением,
Александр.
Страницы: 1
Читают тему (гостей: 1)



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

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