RUS  ENG 

Проблемы со слоем InMemory

Страницы: 1
RSS
Проблемы со слоем InMemory
 
Если у слоя стоит InMemory := true, то почему-то перестает работать выделение объектов произвольной областью (прямоугольником, окружностью). В Selection попадает только часть объектов из области или вообще ни один. Версия ActiveX - последняя (сборка 2566).
 
Слой InMemory создавался для отображения мобильных объектов и больше не для чего, поэтому там часть функциональности при работе как с обычным слоем отсутствует. А как Вы его используете и зачем?
 
Режим InMemory я использую для фильтрации типовых элементов в слое. Когда значков на экране очень много, пользователь теряется, поэтому был создан режим отображения элементов только выбранного типа/режима(ов), т.е. я перевожу слой в InMemory и удаляю все остальные объекты. В связи с особенностями задачи разделить слой на несколько, где сразу были бы значки разных типов, слишком трудоемко. Создавать новый пустой слой со значками, переносить в него только нужные и затем подменять в программе - этот вариант тоже не совсем подходит по ряду причин, плюс он гораздо медленнее по скорости.
P.S. : Кстати, в InMemory при выделении элементов по Shift'y они группируются, а областью - нет. Просто такое выделение очень востребовано, чтобы после фильтра узнать, сколько искомых элементов присутствует в каком-то районе, квартале и т.п.
 
InMemory не оптимизировался по скорости для работы с большим числом объектов. Не рекомендуется его использовать для обычных слоев. Он с ними медленно работать будет. С выделением посмотрю.
Для сокрытия лишних объектов можно использовать тематическую раскраску с параметром Invisible, можно задавать таким объектам созданный невидимый режим, можно вместо InMemory сделать копию слоя, и удалить лишние объекты там. Наконец, мы лучше сделаем у типа признак видимый-невидимый.
 
Признак видимый-невидимый для типов/режимов[!] - это просто отлично. А если для полной универсальности такой признак ввести для каждого элемента слоя - это было бы совсем замечательно! Но это возможно в обозримом будущем или слишком трудоемко?
 
В обозримом. До весны.
 
Спасибо. Будем ждать...
 
Добавил видимость-невидимость типов и режимов. В Zulu включать-отключать видимость можно в окне "Панель проектов" так же как и видимость слоев. А в объектной модели соответсвующие методы добавлены.
Страницы: 1