RUS  ENG 

Расширенное управление надписью

Страницы: Пред. 1 2
RSS
Расширенное управление надписью
 
Здравствуйте. Трудностей в общем-то не возникает, но есть пожелание как-то оптимизировать код. Есть еще одно предложение по оптимизации динамически создаваемых надписей и надписей в целом: при обновлении значений программа "замирает", переписывая все надписи, при этом не видно процесса хода выполнения, что для пользователя (Заказчика) не всегда очевидно. Возможно ли переписывать надписи и кэш вначале над видимой областью, чтобы для пользователя сложилось впечатление, что все выполнение обновления, например, после выполнения расчета, выполняется на лету? То есть хочется организовать обновление надписей по принципу tile-вой системы: видимая область изменилась, и если не существует кэш для этой области, то он формируется и обновляются надписи для измененной видимой области. Рано или поздно пользователь "проползет" по всей карте и, таким образом, сформируется кэш для всего слоя с новыми значениями, но, как правило, в каждый момент времени пользователя интересует конкретный район, то есть видимая область карты. Насколько это сложно будет реализовать? И если возможно, то в каком релизе ожидать?
 
Слой, к которому применяется процедура обновления надписей вообще ничего не знает про видимую и невидимую область. Это только карта знает, что в ней есть этот слой. Если обновление данных происходит постоянно, лучше кэш отключить и отображать надписи при небольшом масштабе. Кэш удобен, когда данные не меняются. Можно разработать интеллектуальное кэширование, но не в текущей версии.
 
Понятно, плохо, что для текущей версии
Цитата:
Можно разработать интеллектуальное кэширование...
не будет сделано.
Я так понимаю, что при каждом обновлении данных нужно вызывать SetLabelLayer, если не использовать кэш?
 
Ну мы просто не можем бесконечно все тянуть в текущую версию. Нам нужно новую выпускать. Сейчас только в 7.0 в основном ошибки исправляем.
Если не меняется шаблон надписей, то при изменении только данных вообще ничего менять не надо, если данные меняются из Zulu, там фиксируется изменение данных и кэш перестраивается. Если же данные меняются в базе извне, то Zulu про это не знает и, соответственно, обновление бирок тоже нужно делать по команде.
 
Все понятно. Спасибо за разъяснения.
Страницы: Пред. 1 2