СЛОИ | |||
Понятие слоя, элементы слоя
Описание слоев Атрибуты слоя Описание элементов слоя Методы, используемые для задания элементов слоя Пример задания различных типов элементов слоя Примеры изменения различных атрибутов слоя. Слой является основным объектом, с помощью которого происходит управление построением изображения и "активными" элементами изображения для создания интерактивного интерфейса пользователя. В слой могут входить элементы следующих типов:
Один слой может содержать элементы различных типов, а элемент, в свою очередь может входить одновременно в разное количество слоев. Слои могут быть организованы в группы, и каждый слой может входить в произвольное количество групп. Такая организация обеспечивает гибкое управление при задании и изменении контекста изображения и поиска выделенных (находящихся под курсором) элементов. Описание слоев
Список слоев, с которыми будет работать апплет, может быть задан статически, при описании параметров апплета, или динамически с использованием JavaScript. При статическом задании параметров апплета в HTML коде используется тег <param>.Значение ключевого параметра name должно быть равно layers_all, а в ключевом параметре value - перечислены имена слоев <layer_name>. Далее, для того чтобы апплет создал изображение необходимо задать множество отображаемых слоев. Для этого используется параметр апплета layers_draw, а в качестве значения этого параметра указывается список имен отображаемых слоев. Синтаксис описания списка слоев тот же, что и синтаксис описания списка элементов группы. Отображение слоев происходит в том порядке, в котором они заданы при описании множества отображаемых слоев. Пример задания списка слоев и порядка их отображения <param name=layers_all value="layer1 layer2 ... layerN"> <param name=layers_draw value="#layer1 #layer2 ... #layerN" > Если взаимодействие с апплетом происходит из JavaScript, то используются методы апплета, которые позволяют создавать новые и удалять уже имеющиеся слои и группы, изменять параметры отдельных слоев и их элементов. Более подробную информацию о задании параметров апплета можно посмотреть в разделах: "Статическое задание параметров апплета" и "Динамическое задание параметров апплета из JavaScript". Атрибуты слоя
Все элементы слоя могут иметь некоторые общие свойства и признаки, например, цвет, признаки активности и видимости, текст подсказки и т.д. Для того чтобы задать общие атрибуты отображения для всех элементов слоя используется параметр апплета <layer_name> , значением этого параметра являются атрибуты слоя, которые определяют: Пример задание атрибутов для слоя layer1 (задается цвет границ) <param name=layer1 value=" draw_layer=0xd0 border_color_layer=#F0E68C"> Описание всех параметров слоя и его атрибутов можно посмотреть в разделе "Приложение 1. Атрибуты слоя и его элементов". Описание элементов слоя
Элементы слоя задаются с помощью параметров апплета, имена которых образуется по шаблону <layer_name>_object_<num>, где <layer_name> - имя слоя, <num> - номер элемента слоя. В атрибуте value задается описание элемента слоя и его индивидуальные атрибуты отображения. Пример задания первого элемента слоя layer1 <param name=layer1_object_0 value="описание элемента слоя"> Элементы слоя можно задавать и из программ на JavaScript. Ниже приведены примеры создания нового слоя и его элементов и добавления (или замены) элемента слоя в уже существующий слой. Создание слоя с именем layer1, который состоит из двух элементов. add_layer( "layer1","описание атрибутов этого слоя" ) set_layer_element_num(0, "object", "описание первого элемента слоя"); set_layer_element_num(1, "object", "описание второго элемента слоя");Добавление 5-го элемента в слой с именем layer1 (если элемент с таким номером существует, то происходит его замена) set_current_layer("layer1"); set_layer_element_num(5, "object", "описание элемента слоя"); Описание элемента слоя - это строка, содержащая тип описания, за которым следуют позиционные и ключевые параметры, задающие в соответствии с типом описания атрибуты элемента слоя. Тип описания определяет тип элемента или метод его формирования. Количество и состав атрибутов, следующих за типом описания, определяется типом задаваемого элемента или методом его формирования. Однако имеется ряд атрибутов, не зависящих от типа элемента слоя или метода его формирования. С помощью них задаются и некоторые одинаковые для элементов различного типа свойства и атрибуты отображения, такие как идентификатор элемента слоя, индивидуальный цвет элемета слоя, индивидуальные параметры штриховки и другие (см."Общие ключевые параметры для отдельных элементов слоя" <common key params>). К методам формирования элемента слоя, отличным от явного описания, можно отнести задание в качестве элемента одного слоя элемента другого слоя или его копии. Для того чтобы в некоторый слой можно было включать элементы других слоев, необходимо в описании элемента слоя в качестве типа описания указать ключевое слово link, за которым следуют параметры, задающие элемент, на который делается ссылка. Возможность включения одного элемента во многие слои позволяет удобно (без повторного описания элементов) задавать состав изображения и состав активных зон и способов выделения активных элементов. Так например одни слои могут описывать изображение, а другие задавать расположение и приоритет (порядок просмотра) активных зон изображения и/или способы выделения активных элементов. Еще одним полезым методом формирование элементов слоя (помимо ссылки) является копирование элемента одного слоя в элемент другого слоя. При копировании необходимо в описании элемента слоя в качестве типа описания указать ключевое слово copy, за которым следуют параметры, задающие элемент, который копируется. Применение метода copy позволяет избегать повторного "громоздкого" описания для элементов, имеющих одинаковые координаты (прежде всего для линий и полигонов). Таким образом, описание элемента слоя состоит из трех частей <тип описания> <параметры, специфичные для типа описания> [<параметры, не зависящие от типа описания>]. При описании координат элементов слоя следует иметь в виду, что координаты (0,0) соответствуют левому вернему углу окна апплета. Кроме того, если в описании встречается несколько подряд идущих чисел, то они могут отделяться друг от друга запятой или пробелом.
Синтаксис задания элементов слоя
Пример задания различных типов элементов
слоя
В данном примере показано как задать все
перечисленные выше элементы слоя.
В примере № 1 показаны
элементы всех типов - прямоугольник,
ломанная линия, полигон, эллипс и сектор
круга, текст и растровое изображение. Можно
изменить значение параметра слоя draw_layer,
который управляет отображением элементов
слоя. В примере № 2 можно изменить параметры, управляющие отображением границ слоя (цвет, толщина) и цветом заливки элемента слоя. В данном примере приведены элементы всех типов. В примере № 3 показан стиль изображения границ для прямоугольных элементов. Параметры для задания стиля границ можно изменять. В примере № 4 демонстрируется выделение элементов изображения при "наезжании" курсором (выделение активных объектов). Можно изменить значение следующих параметров Подробнее о задании и изменении параметров, управляющих положением и цветовым оформлением текстовой подсказке смотрите в разделе "Текстовая подсказка".
|