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

KFF (Все сообщения пользователя)

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

Страницы: Пред. 1 ... 313 314 315 316 317 318 319 320 321 322 323 ... 327 След.
Просьба к разработчиками (класс - HSelect)
 
То есть вы предлагаете делать
приблизительно (самым простым способом) так :

/// функция выбора объекта по коду и локализации
/// oLocal - локализация
/// oCode - код классификатора


 FSel := mapCreateMapSelectContext(FMap);
 mapSelectLocal(FSel, -1,0);
 mapSelectLocal(FSel, oLocal,1);   [B]// выбираем объекты с локализацией (с 1000000 штук приблизительно 200000)[/B]
 i:=0;
 Obj:=mapCreateSiteObject(FMap,FMap,KM_IDFLOAT2,0);
 while mapSeekSiteSelectObject(FMap,FMap,Obj, FSel, 4*Byte(i>0))<>0 do
 begin
  // [B]маслаем 20000 объектов для отбора по коду с классификатора[/B]
  if mapObjectExCode(Obj)=oCode then
  begin
   SetLenGth(result,LenGth(result)+1);
   result[High(result)].Base:=mapObjectKey(Obj);
  end;
  inc(i);
 end;
 mapDeleteSelectContext(FSel);
 mapFreeObject(Obj);
-----------------
Спасибо !
Не утешительный ответ.
Просьба к разработчиками (класс - HSelect)
 
Спасибо Валентинович !
но Вы меня явно не понимаете.
суть просьбы выделена красным и жирным.
НА КАРТИНКАХ:
организовать выбор объекта используя класс
HSelect как организовано в ГИС Панорама вот этой кнопкой:
[IMG]http://img26.imageshack.us/img26/1313/444444d.jpg[/IMG]


[QUOTE]_MAPIMP long int _MAPAPI mapObjectCode(HOBJ info);[/QUOTE]
не вижу объекта HSelect ???
Изменено: XENA - 15.03.2009 13:03:16
некорректная работа функции
 
Здравствуйте господа разработчики !
с mapCreateCopyObjectAsNew - все понятно,
но непонятно зачем тогда нужна mapCreateCopyObject ???
------------------------------
В опубликовааном коде создаються зоны вокруг линейных объектов.
Как не крути но меня смущает работа функции - mapZoneLineObject
в цикле.
Складывается такое впечатление что с ней что-то делается ???
Вот картина до
[IMG]http://img24.imageshack.us/img24/2549/88888888888z.jpg[/IMG]
Вот после работы (вышеописаного кода)
[IMG]http://img72.imageshack.us/img72/9057/999999999999.jpg[/IMG]
Почему mapZoneLineObject - создает непонятные объекты.
ПРичем их количество случайно. Чем больше исходных объектов
тем больше "баговых" зон.
Обновление карты многопотоковой программе
 
Здравствуйте господа разработчики !
Скорее всего найдена проблема но
возник второй вопрос по теме,
и вопрос скорее всего к разработчику ядра:

Олег Валентинович, опишите пожалуйста критерии
использования функции mapAdjustData а точнее:
1. Время ее срабатывания (для Подольска)
2. Возможность ее использование в пногопотоковом модуле
3. Реакция ядра на парлельное выполнение
4. Механизм определения результата ее выполнения (когда закончено согласование данных)
5. Корректность ее использования в модулях данного класса
----------------------------
Просьба к разработчиками (класс - HSelect)
 
Здравствуйте Олег Валентинович !
Запросить нужный  мне код я могу используя mapObjectExCode
[B]мне бы его в класс HSelect - добавить.!!!!!!!!!!!! для огранизации перебора !!!!!! [/B]
То есть, без лиших телодвижений установить признак выделения/сброса
выделения по внешнему коду объекта.
[B]ЖЕЛАЕМАЯ РЕАЛИЗАЦИЯ ГРАФИЧЕСКИ
(Форумчанам !!!! ниже описанных функций в MapApi нет !!!,
Разработчикам: но хотелось что-бы они были !!!):[/B]

[I] // Установить доступ к объектам c заданным класификационным кодом
 // select - контекст условий поиска
 // excode - класификационный код объекта
 // если равен -1 (0xFFFFFFFF), то устанавливается
 // доступ ко всем объектам сразу;
 // check  - доступность локализации (0 - нет доступа, != 0 - есть)

_MAPIMP  void _MAPAPI mapSelectByExCode(HSELECT select, long int excode,
                             long int check);

 // Запросить доступны ли объекты сc заданным класификационным кодом
 // select - контекст условий поиска
 // excode - класификационный код объекта
 // если равен -1 (0xFFFFFFFF), то устанавливается
 // доступ ко всем объектам сразу;
 // check  - доступность локализации (0 - нет доступа, != 0 - есть)

_MAPIMP  long int _MAPAPI mapСheckByExCode(HSELECT select, long int excode);
[/I]
-------------------------------------------
Вот что имелось ввиду

PS: описанные Вами функции мне хорошо известны.
Изменено: XENA - 15.03.2009 12:56:41
некорректная работа функции
 
Здравсвуйте господа разработчики !
Возникла ситуация некорректной (непонятной по описанию)
работы функции mapCreateCopyObject.
Ведь она же копирует весь (объект + его ТТХ "написано ..около 300 кБ памяти" )??
Или нет ? Если нет, тогда зачем она нужна ? можно пользоватся CreateObject или CreateSiteObject
-----------------------------------------------
Весь процесс происходит на 1-й открытой ПОЛЬЗОВАТЕЛЬСКОЙ КАРТЕ

Задача:
необходиммо создать зоны вокург заранее отобранных
линейных объектов, с целью анализа прилежащей территории.
Результат:
При переборе объектов - создаются их копии (для дальнейшего уничтожения)
Вот кусок кода:

// FMap: HMap - понятно  LN : TIntArray - KEY линейных объектов (предварительно отобранных)

function FindCross(FMap: HMap; LN : TIntArray): boolean;
var  robj,zone  : HObj;
    i : integer ;
begin
rObj:=mapCreateSiteObject(FMap,FMap,KM_IDFLOAT2,0);
for i:=0 to LenGth(LN)-1 do
if mapSeekSiteObject(FMap,FMap,rObj,LN[i])<>0 then
begin
 zone:=mapCreateCopyObject(FMap, rObj);
 mapZoneLineObject(FMap,zone,100);
 mapCommitObject(zone);
 mapFreeObject(zone);
end;
mapFreeObject(rObj);
end;
-----------------
результат:
- все срабатывает, исходные линейные объекты исчезают
остаються только зоны ???
- некоторые объекты вообще обводятся системным объектом,
но не исчезают исходные.
------------------
Исходя из сказанного, предлагаю сделать
функции серии mapZoneXXXXX приблизительно такого формата
ResObject = mapZoneLineObject(карта,InObject,ширина)
где : InObject - исходящий (базовый объект)
     ResObject - объект-зона
Изменено: XENA - 14.03.2009 19:08:47
Просьба к разработчиками (класс - HSelect)
 
Здравствуйте господа Разработчики !
Очень часто при программировании возникает необходимость поиска объектов
по коду классификатора - по типу задачи ГИС Панорама - "выделить по условному знаку"
Функция:
[QUOTE]_MAPIMP void _MAPAPI mapSelectObject(HSELECT select, long int object,
                              long int check);[/QUOTE]
...хороша, если код прост.
Если у меня несколько созданных объектов и производится сложный
пространственно-логический анализ, создание лишнего объекта
лишь усугубляет процесс написания и отладки из-за лишего
кода типа: создать объект - зарегистрировать его - выбрать внутренний индекс -
запомнить - удалить объект.
-------------------------------
Хотелось бы чего-то вот такого:
FSel := mapCreateMapSelectContext(FMap);
mapSelectLocal(FSel, -1,0);
mapSelectLocal(FSel, OL_MARK,1);
[B]mapSelectExCode(FSel, 45851000)[/B] <<<<  ВОТ О ЧЕМ Я ПРОШУ
cnt:=mapSeekSiteSelectCount(FMap,FMap,FSel);
// тут выбраны все объекты с кодом 45851000 и локализацией ТОЧЕЧНЫЕ
...............
...............
Очень хотелось бы, что-бы такая функция
была внедрена в ядро Панорамы.
----------------------------
Кодировка символов на карте
 
Здравствуйте GVD
Мною проведен еще один тест, который приводит к курочанью шрифтов.
Оказывается (кроме сказанноговыше) шрифты могут не только курочится
а и не правильно отображатся, в 3-х ситуациях:
1. При установленном Майкрософт Офисе - добавлены дополнительные поддержки языков
   (не русский но с кирилическим алфавитом)
2. В системе во вкладке языки и стандарты - укзан не славянский язык
3. Системой используется не русская кодовая страница.
---------------------
Выход с ситуаций
с 1-й : Добавить русский язык и сделать его основным. После чего перегрузить компьютер.
с 2-й : Заказать у КБ Панорама шрифты для классификатора под конкретный язык.
(подобные задачи уже решались в КБ - создан шрифт для казахского языка)
с 3-й : Смените кодовую страницу на ПК, через те же "языки и региональные стандарты "

[I]PS: Администраторам - данный ответ скорее всего по теме настройка ОС на ПК, и никак
не вписывается в тему форума. Если данный ответ будет считатся такой что "не в тему"
удаляйте без предупреждения!
[/I]
Что я не так делаю?
 
[QUOTE]Откуда берется excode? Задаю сам от фонаря?[/QUOTE]
нет рисунка
код - excode локализация - local

[QUOTE]Откуда берется name? Задаю сам?[/QUOTE]
[IMG]http://img178.imageshack.us/img178/815/7777777777w.jpg[/IMG]

[QUOTE]HOBJ hObj = mapCreateObject( m_hMap, _nSheetNbr, IDFLOAT2 );[/QUOTE]

-------------------------
не вижу var nSheetNbr =  1;
значение переменной _nSheetNbr - должно быть минимум 1 (не ноль) -
проверьте пожалуйста
-------------------------
Проверьте что-бы значение dB, dL - попадало в рамку
листа nSheetNbr созданной Вами карты. Если не попадает
Панорама счтиает координату БАГОВОЙ и игнорирует ее
-------------------------
Пока все, что мне по коду непонятно.
-------------------------
Может теперь получится
Изменено: KFF - 01.01.2014 14:04:13
Что я не так делаю?
 
Здравствуйте CrazyBeerMan
чтото в Вашем коде не видно функции
mapRegisterObject или [B]mapDescribeObject[/B] приношу извинения
Изменено: XENA - 13.03.2009 19:41:34
Страницы: Пред. 1 ... 313 314 315 316 317 318 319 320 321 322 323 ... 327 След.



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

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