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

Роман Твердов (Все сообщения пользователя)

Поиск  Пользователи  Правила  Войти
Форум » Пользователи » Роман Твердов
Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 ... 6 7 8 9 10 11 12 13 14 15 16 ... 24 След.
GTK Active C# при работе с функцией mapPortalMenu возникает ошибка
 
Здравствуйте!
Проверили вызов функции.
Пример кода
[CODE]
...

   [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
   public struct TASKPARMEX              // Параметры вызова диалогов
   {
       public int Language;            // Код языка диалогов (1 - ENGLISH,
       // 2 - RUSSIAN, ...)
       public int Resource;            // Должен быть 0!
       public IntPtr HelpName;         // Полное имя файла ".hlp"
       public IntPtr IniName;          // Полное имя файла ".ini" приложения
       public IntPtr PathShell;        // Каталог приложения (exe,dll,...)
       public IntPtr ApplicationName;  // Имя приложения
       public int Handle;              // Идентификатор главного окна приложения
       public int DocHandle;
       public int StayOnTop;

       public void Init()
       {
           Language = 1;
           Resource = 0;
           HelpName = IntPtr.Zero;
           IniName = IntPtr.Zero;
           PathShell = IntPtr.Zero;
           ApplicationName = IntPtr.Zero;
           Handle = 0;
       }
   }


  public class MapAccess
  {
      private const string GisLibrary = "gisacces";     // dll гис-ядра
       [DllImport(GisLibrary, CharSet = CharSet.Ansi)]
       public static extern int mapPortalMenu(int hmap, ref TASKPARMEX parm, int left, int top);
...
[/CODE]

Вызов функции:
[CODE]
...
       private void button1_Click(object sender, EventArgs e)
       {
           TASKPARMEX parm = new TASKPARMEX();
           parm.Init();
           MapControl.MapAccess.mapPortalMenu(mvMap.MapHandle, ref parm, button1.Top, button1.Left);
       }
...
[/CODE]


Функция возвращает идентификатор открытых данных. Если никакие данные не открыты, то 0.
Изменено: Роман Твердов - 11.01.2016 16:09:31
Неоднозначности в типах, maptype.h, mapcreate.h, seekahi.h
 
Здравствуйте! Скорей всего у Вас перечисленные типы описаны где-то в Вашей библиотеке и подключен maptype.h, в котором эти же типы. Нужно одно объявление. Оставьте лучше maptype.h

И еще не понятно, зачем Вы подключаете mappack.lib? При разработке приложений с помощью GTK достаточно библиотек gis*.lib
Изменено: Роман Твердов - 11.11.2015 15:43:33
Как установить шрифт для подписи
 
Здравствуйте!
Обычно шрифт для объекта типа подпись указывается в классификаторе карты. Посмотрите api функции, связанные с работой с объектами классификатора - rscapi.h
Кроме объектов классификатора могут быть созданы графические объекты подписи. Например, параметры объекта, которые описываются в структуре IMGTRUETEXT (описание в MAPGDI.h).
Смотрите в GTK методы класса TMapObj, которые начинаются с DrawObject.
Изменено: Роман Твердов - 23.10.2015 14:55:20
mapPlaneToGeo
 
Здравствуйте!
[CODE]а для долготы : значение увеличивается в два раза,[/CODE]
Приведите пример. В каких единицах измерения проверяете?

Как выполняете преобразование и пересчет координат? Приведите код программы.
Не открывается карта
 
[CODE]Но в библиотеке gisacces есть ограничение на кол - во объектов и на масштаб.[/CODE]
Ограничений нет, если приобретена лицензия на выполнение пользовательских приложений.
[CODE]Если я не путаю, то mapacces.dll - это же полная версия библиотеки gisacces?[/CODE]
Скорее наоборот.
[CODE]И вопрос ради интереса: почему всё - таки не открывается?[/CODE]
Без самой карты по скриншоту сложно сказать, почему она не открывается.

Возможно, Ваша карта многолистовая. Возможно, из-за того, что обращаетесь к mapacces не из прикладной задачи, происходит какая-то ошибка чтения.
Можете прислать Ваши данные?

Попробуйте в ГИС Карта сохранить Ваш map в sxf, а потом sxf открыть как sit. А потом уже sit открыть в Вашем приложении.
Создание объекта внутри другого
 
1. Построить зону для объекта (subject = 0) со значением -20. Записать ее в объект с кодом 79758000.
2. Далее для каждого подобъекта в цикле (subject=1..sub_count)  построить его зону со значением +20. Полученную метрику записать как подобъект в объект полученный в результате шага 1.

Вам нужно всегда иметь метрику исходного объекта, т.к. mapInsideZoneObjectEx записывает метрику построенной зоны в передаваемый hobj.
Изменено: Роман Твердов - 11.09.2015 11:55:46
Не открывается карта
 
Здравствуйте.
Приложение с использованием библиотеки mapacces.dll вне ГИС Карта, Панорама Мини и т.д. работать не будет. Возможно только для разработки прикладной задачи. Если Вы хотите разработать свое отдельное приложение, необходимо использовать библиотеки Gis ToolKit - gisacces.dll и д.р.
Создание объекта внутри другого
 
[CODE]Как сделать так, чтобы вокруг подобъектов контур тоже строился? [/CODE]
Перебором для всех подобъектов меняя subject

[CODE]Начальный объект касается границы карты и поэтому отступ искомого объекта происходит в том числе и от границы карты. Можно ли этого избежать?[/CODE]
У Вас же по рамке идет контур площадного объекта, для которого Вы строите зону. Готового решения для такой задачи нет. Можете попробовать перед Commit анализировать метрику объекта и при необходимости "притягивать" ее к рамке.
Создание объекта внутри другого
 
Здравствуйте!
Что конкретно не работает?
copy_info точно содержит метрику до выполнения построения зоны?
Чему у Вас равен result после выполнения функции?
Что возвращает mapDescribeObject?

Попробуйте построить зону с параметрами:
form = 1 - закругленный
arcdist = 0.2 - расстояние между точками по дуге (в метрах на местности) рекомендуется radius / 15

Не забывайте про mapFreeObject(copy_info).
Проблема при запуске примеров ToolKit 12
 
Здравствуйте!
Лицензия для 11 и 12 версии ГИС-ядра не взаимозаменяемая. Кроме этого, PanEdit 11 и GTK 12 - разные продукты и для каждого из них Вы обязаны приобрести лицензию.
[QUOTE]Ключ был обновлен недавно[/QUOTE]
Вы выполняли обновления после приобретения лицензии GTK 12?

Обращаясь в техподдержку, пожалуйста, сообщайте номер ключа, а также лицензиата.

Вам нет необходимости в GTK для разработки библиотек в качестве задачи в PanEdit. Вы можете разрабатывать их с помощью SDK. Примеры можете скачать по ссылке [URL=http://gisinfo.ru/download?id=91]SDK[/URL]
Страницы: Пред. 1 ... 6 7 8 9 10 11 12 13 14 15 16 ... 24 След.



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

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