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

C#, Linux, Sit карты

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1 2 След.
RSS
C#, Linux, Sit карты
 
Добрый. При попытке открыть карту *.sit которая включена в штатную поставку moskow.sit получаю внутреннюю ошибку - 60009 (Ошибка открытия файла).
Примечатльно, что при открытии других форматов карт, например sitx никаких проблем.
 
Так же, если в каталог , скинуть все остальные файлы (что идут в поставке API), то библиотека сообщает о внутренней ошибке 60050. Но, все права на месте.


Подскажите пожалуйста. В чем может быть причина такой избирательности при открытии карты?
Изменено: Денис Вицко - 07.06.2022 08:22:57 (исправил вставку картинок)
 
Формат SIT состоит из многих файлов.
Подробнее здесь -
https://gistoolkit.com/download/doc/mapapi.pdf

раздел 2.3 Структура пользовательских векторных карт

Возможно скопировали не все файлы карты.

Формат SITX всю карту хранит в одном файле.
 
Я скопировал все файлы. Из SDK ./data/moskow. Давайте проверим состав? Возможно, в состав поставки ToolKit не все файлы включены?
Код
-rw-rw-r-- 1 valex valex 116918 Sep 16  2020 moskow.RSC
-rw-rw-r-- 1 valex valex 614644 Aug 22  2005 moskow.SDA
-rw-rw-r-- 1 valex valex  83664 Aug 22  2005 moskow.SHD
-rw-rw-r-- 1 valex valex   5748 Jul 12  2017 moskow.sit
-rw-rw-r-- 1 valex valex  21115 Aug 22  2005 moskow.SS
 
Цитата
Alexander Volovikov написал:
Я скопировал все файлы. Из SDK ./data/moskow. Давайте проверим состав? Возможно, в состав поставки ToolKit не все файлы включены?
Состав правильный, проверьте расширение - не SS, а SSE
Цитата
-rw-rw-r-- 1 valex valex 116918 Sep 16  2020 moskow.RSC
-rw-rw-r-- 1 valex valex 614644 Aug 22  2005 moskow.SDA
-rw-rw-r-- 1 valex valex  83664 Aug 22  2005 moskow.SHD
-rw-rw-r-- 1 valex valex   5748 Jul 12  2017 moskow.sit
-rw-rw-r-- 1 valex valex  21115 Aug 22  2005 moskow.SSE

Другие карты *.sit открываются? Например, Ногинск?

Вы в Линуксе какой состав библиотек используете и с каким электронным ключом защиты?
Карта moskow.sit сейчас без ключа не открывается.
 
Спасибо. С расширением SSE все корректно.
Состав библиотек - последний (14.1.05). Без ключа. Free версию.
Есть ли другие карты, формата SIT, которые бы без ключа открывались?

Например, карта reg_russia.sitx открывается замечательно.

 
Изменено: Alexander Volovikov - 07.06.2022 09:17:30
 
При попытке открыть файл Noginsk_G1.sit (я скопировал все файлы из каталога Exemple\data\Graph)
Выдает ошибку с кодом  60006
 
Цитата
Alexander Volovikov написал:
Состав библиотек - последний (14.1.05). Без ключа. Free версию.

Мне кажется, у Вас есть непонимание, что такое Free-версия.
Просьба ознакомиться с информацией

Также посмотрите часто задаваемые вопросы - раздел "Лицензирование" и тему "Кросс-платформенная разработка".

Free-версия - это отнюдь не бесплатная версия, напротив - стоит она в разы дороже обычной.
Чтобы Ваше приложение не требовало ключ его необходимо скомпилировать определенным образом, используя лицензионный ключ Free-версии.


Карта Example\data\Graph\Noginsk_G1.sit - это карта графа дорог, она подходит под ограничения демо-режима, поэтому может быть открыта без ключа.

Однако, никто не обещал, что примеры из GIS ToolKit 12 (Windows) будут корректно открываться в Astra Linux с библиотеками от ГИС Конструктор 14.
Во-первых, значительно изменились правила возможного открытия карт без ключа (демо-режима).
Во-вторых, примеры GIS ToolKit 12 могут быть не адаптированы для Линукс (как минимум в них может оказаться измененный регистр символов в именах файлов, что для Windows безразлично, а в Линуксе файл найден не будет).

Поэтому рекомендуется использовать примеры, идущие в составе ГИС Конструктор - usr\share\gisdesigner\examples\

Также можно скачать карту Ногинска из раздела демонстрационных данных.
 
1 Спасибо. Я использую  - "Версии с приставкой Free стоят дороже, но позволяют выпустить исполняемый модуль, который не будет требовать ключа."
2 Скачал архив. Там 2 файла (Noginsk.sxf, 200t05g.rsc)
3 При попытке открыть карту выходит следующая ошибка
ОШИБКА ВХОДНЫХ ПАРАМЕТРОВ (60040)
 
Формат SXF - это формат хранения и обмена, для работы с картой ее нужно загрузить в формат SIT, SITX, SITZ, MAP, MAPZ

Либо штатными средствами ГИС Панорама, ГИС Оператор.
Либо:
Цитата

//==========================================================­==============
//   Функции импорта, экспорта и обновления карты для форматов SXF, TXF и DIR
//==========================================================­==============
//  Окну диалога посылаются следующие сообщения :
//  WM_OBJECT = 0x585   WParam - процент обработанных объектов
//  WM_INFOLIST = 0x584 LParam - адрес структуры INFOLIST
// ----------------------------------------------------------------

// Загрузить (импортировать) карту из файла SXF, TXF или DIR с
// использованием Select с преобразованием топокарты к зоне документа
// Файлы SXF и TXF могут хранить координаты в метрах, радианах или градусах
// hmap    - идентификатор открытой карты (рекомендуется указывать
//           для определения текущей зоны топокарты) или 0;
// sxfname - имя загружаемого файла типа SXF, TXF или DIR;
// rscname - имя файла классификатора, с которым загружается карта,
//           имя классификатора можно запросить из SXF (TXF) функцией GetRscNameFromSxf
//           или из карты; для файла DIR может быть 0;
// mapname - имя создаваемой карты (обычно совпадает с именем SXF (TXF))
//           или ноль или указатель на пустую строку (буфер размером MAX_PATH
//           c нулевым байтом равным нулю) или указатель на папку для размещения
//           карты. Если имя карты не задано или задана только папка, то карта
//           создается с именем SXF (TXF) и расширением ".sit". Если namemap
//           указывает на буфер достаточной длины (size), то в буфер записывается
//           имя созданной карты;
//           Для файла DIR тип общей карты - MPT (проект данных, включающий все
//           открытые карты из DIR) или MAP (многолистовая карта);
// size    - длина буфера, на который указывает переменная namemap, или 0. Обычно длина
//           равна MAX_PATH_LONG (1024);
// handle  - идентификатор окна диалога, которому посылаются уведомительные
//           сообщения (HWND для Windows, CALLBACK-Функция для Linux);
// select  - фильтр загружаемых объектов и слоев, если необходима выборочная
//           обработка данных;
// frscfromsxf - значение флажка "разрешить использование
//               имени классификатора, указанного в файле sxf"
// typesit - тип создаваемых карт в проекте MPT при импорте DIR (1- SIT; -1- SITX)
// password - пароль для создания защищенного хранилища карты (SITX)
// psize    - длина пароля в байтах
// transform - признак необходимости трансформировать загружаемую карту в систему координат hmap
//             (если hmap и transform не равно 0)
// hevent    - адрес функции обратного вызова для записи в протокол ошибок выполнении программы
// eventparam - первый параметр функции обратного вызова
// Для добавления открытой карты в документ необходимо вызвать функцию
// mapAppendData(hmap, namemap). Если mapname содержит имя карты типа MAP и
// она содержит хотя бы один лист, то при импорте данных выполняется создание
// нового листа в карте MAP. В этом случае функция mapAppendData не должна вызываться.
// При ошибке возвращает ноль

_VECIMP long int _VECAPI ImportFromAnySxfProEx(HMAP hmap, const WCHAR * namesxf,
                                           const WCHAR * namersc,  WCHAR * namemap, long int size,
                                           HMESSAGE handle, HSELECT select, long int frscfromsxf,
                                           long int typesit, const WCHAR * password, long int psize,
                                           long int transform, EVENTLOG hevent, void * eventparam);

_VECIMP long int _VECAPI ImportFromAnySxfProM(HMAP hmap, const WCHAR * namesxf,
                                           const WCHAR * namersc,  WCHAR * namemap, long int size,
                                           HMESSAGE handle, HSELECT select, long int frscfromsxf,
                                           long int typesit, const WCHAR * password, long int psize,
                                           long int transform);

_VECIMP long int _VECAPI ImportFromAnySxfPro(HMAP hmap, const WCHAR * namesxf,
                                           const WCHAR * namersc, WCHAR * namemap,
                                           long int size, HMESSAGE handle,
                                           HSELECT select, long int frscfromsxf,
                                           long int typesit,
                                           const WCHAR * password, long int psize);
Страницы: 1 2 След.
Читают тему (гостей: 1)



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

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