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

Диалоговое окно преобразования пользовательской карты

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1 2 След.
RSS
Диалоговое окно преобразования пользовательской карты
 
Здравствуйте, уважаемые разработчики!

Появился следующий вопрос.
Есть набор карт. Требуется открыть все карты. При открытии каждой карты открывается диалоговое окно с вопросом:
"Система координат пользовательской карты не соответствует открытому району. Преобразовать?"
Как можно отключить отображение этого диалогового окна или что следует сделать, чтобы не отображалось это окно?
Карт очень много, пользователю приходится тысячи раз подтверждать или отклонять это преобразование.

Заранее спасибо большое!
 
Вы может открывать карту одной из следующих функций с применением параметра transform:

Код
  // Открыть пользовательскую карту в заданном районе работ
  // (добавить в цепочку пользовательских карт (в обстановку))
  // Возвращает идентификатор открытой пользовательской карты
  // hMap     - идентификатор открытой карты
  // sitename - имя открываемого файла пользовательской карты
  // mode     - режим чтения/записи (GENERIC_READ, GENERIC_WRITE
  //            или 0) GENERIC_READ - все данные только на чтение
  // transform - признак трансформирования пользовательской карты
  //             к ранее открытым данным (если проекции разные):
  //             0 - не трансформировать данные (преобразовывать "на лету"),
  //             1 - трансформировать данные при открытии и сохранить карту
  //                 в новой проекции,
  //            -1 - задать вопрос пользователю.
  // В серверной версии (-1) обрабатывается, как 0.
  // password - пароль доступа к данным из которого формируется 256-битный код
  //            для шифрования данных (при утрате данные не восстанавливаются)
  // size     - длина пароля в байтах
  // Передача пароля необходима, если при создании карты он был указан.
  // Если пароль не передан, а он был указан при создании,
  // то автоматически вызывается диалог scnGetMapPassword из mapscena.dll (gisdlgs.dll)
  // Если выдача сообщений запрещена (mapIsMessageEnable()), то диалог
  // не вызывается, а при отсутствии пароля происходит отказ открытия данных
  // При ошибке возвращает ноль

_MAPIMP HSITE _MAPAPI mapOpenSiteForMapPro(HMAP hMap, const WCHAR *sitename, long int mode,
                                           long int transform, const WCHAR *password, long int size);

_MAPIMP HSITE _MAPAPI mapOpenSiteForMapEx(HMAP hMap, const char *sitename, long int mode, long int transform);

_MAPIMP HSITE _MAPAPI mapOpenSiteForMapExUn(HMAP hMap, const WCHAR *sitename, long int mode, long int transform);
 
Спасибо большое за ответ!
А нет ли компонента ActiveX, c помощью которого это можно сделать, или только с помощью API-функций?
 
Методов поддерживающих параметр transform для компонент отображения карты на данный момент нет. Постараемся добавить в следующих версиях GTK Active .
 
ok, ясно

И последний вопрос - а как изменить тип карты, например, на Цилиндрическая Меркатора, WGS84?
 
Если это для новой карты - то при создании паспорта карты вы указываете нужные параметры.
Для существующих карт можно с помощью ГИС Карта 2011 выполнить один раз преобразование.
 
С помощью ГИС Карты не совсем подходит - карт очень много :-)
Написать бы приложение, которое их все открывало и изменяло проекцию.
Я тут нашла функцию mapSetDocprojection - это оно или как-то по-другому?
 
Если вы можете использовать АПИ, то пишите программу, которая первой открывает карту с нужной проекцией, а затем открывает к ней вторую с параметрами трансформировать без вопросов, и закрываете. Последние две операции выполняете в цикле.
 
Ок, спасибо Вам большое за ответы!
 
Добрый день.

Вопрос на эту же тему. Можно ли отключить отображение  диалогового окна "Система координат пользовательской карты не соответствует открытому району. Преобразовать?" при использовании компонента QDMapView не используя функции mapapi. Заранее спасибо.
Страницы: 1 2 След.
Читают тему (гостей: 1)



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

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