Здравствуйте!
Добавить возможность добавлять анимированные символы. На данный момент есть возможность загружать изображения с расширением "gif", но они отображаются как статичные, неподвижные изображения. Включить возможность изменять состояние анимированного объекта.
Например:
Код |
---|
zulu_map := CoMapDoc.Create;
zulu_map.Open('путь\к\карте.zmp');
some_layer := zulu_map.Layers.GetIndexByUserName('некоторый_слой');
some_symbol := zulu_map.Layers[some_layer].AddSymbol(
координата_x,
координата_y,
id_типа,
id_режима,
состояние_анимации // новый параметр
);
// где состояние_анимации принимает булево значение, где
// 1 - анимация по умолчанию включена: символ будет отображаться как gif изображение
// 0 - анимация по умолчанию выключена: символ будет отображаться как статическое изображение
if some_symbol <> -1 then
begin
if some_symbol.Animation.ChangeState(true) then // включить воспроизведение gif (изображение будет анимированным)
// включили анимацию для объекта "some_symbol"
else
// не удалось сменить состояние объекта (символ не является gif изображением; объекта нет на карте; ...
if some_symbol.Animation.ChangeState(false) then // выключить вопроизведение gif (изображение изменяться не будет)
// выключили анимацию для объекта "some_symbol"
else
// не удалось сменить состояние объекта (символ не является gif изображением; объекта нет на карте; ...
end
else
// не удалось добавить символ на карту
|
В окне смены режима добавить элемент для переключения состояния объекта (если символ не является gif изображением, заблокировать возможность изменять это состояние, сделав элемент "Анимированный" неактивным):
Очень удобно в режиме реального времени следить за работой оборудования.
Для примера:
Необходимо отследить работу вентиляции, не просматривая табличные данные. В каком режиме работы находится вентиляция зависит от состояния, в котором находится символьный объект (элемент-переключатель "Анимированный" на форме "Смена режима"): если вентилятор крутится: gif проигрывается, иначе останавливается и не воспроизводится.