Руководство по actionscript. часть 5, стр. 011

Пример: библиотека объектно-ориентированных фигур

Графическое содержимое, создаваемое с помощью внутренних методов рисования фигур (drawEllipse ( ), drawRect ( ) и т. д.), не связано ни с каким объектом. После того как оно будет нарисовано, его невозможно изменить или удалить независимо от другого содержимого. В ActionScript отсутствуют классы, предоставляющие объектно-ориентированный доступ к соответствующим фигурам на экране. В этом разделе продемонстрирован один из способов устранения данного недостатка — пример реализации небольшой библиотеки классов для создания и управления фигурами как объектами.

В нашей библиотеке фигур представлены следующие классы: Basics паре, Rectange, Ellipse, Star и Polygon. Класс BasicShape — это базовый класс библиотеки. Он расширяет внутренний класс Shape, который предоставляет базовую поверхность с минимальным потреблением ресурсов для рисования фигур. Класс BasicShape управляет стилями контура и заливки для всех фигур и определяет, когда фигура должна быть перерисована. Экземпляры остальных классов представляют геометрические фигуры, которые могут добавляться в список отображения или удаляться из него. Класс каждой фигуры реализует свою собственную процедуру рисования, учитывающую особенности построения

данной фигуры. После создания объекта фигуры ее штриховка, заливка и контур могут быть легко изменены.

В следующих шести примерах применяются на практике многие методики, которые были рассмотрены в этой книге, — особенно те, которые были рассмотрены в этой главе. Обращайте пристальное внимание на многочисленные комментарии; они помогут вам понять код.

В листинге 25.1 представлен класс BasicShape — класс абстрактного типа, который определяет базовую функциональность для всех фигур в нашей библиотеке классов. Его основные возможности реализуются с помощью следующих методов:

? setStrokeStyle ( ) и setFillStyle ( ) — сохраняют визуальные характеристики фигуры;

? draw ( ) — отображает фигуру, но делегирует конкретное рисование линий методу drawShape ( ) (абстрактному методу, реализуемому всеми подклассами);

? setChanged( ), clearChanged ( ) и hasChanged*( ) — позволяют отслеживать, изменились ли параметры фигуры с момента ее последнего отображения на экране;

? requestDraw( ), addedListener ( ), removedListener ( ), а также renderListener ( ) — в сочетании эти методы определяют момент, когда необходимо перерисовать фигуру.

Листинг 25.1. Класс BasicShape

package org. moock. drawing { import flash. display.*; import flash. events.*; import f 1 ash. errors.111egalOperationError;

// Базовый класс для отображаемых геометрических фигур public class BasicShape extends Shape { // Стиль заливки

protected var fill Col or.-Number = OxFFFFFF; protected var fill Alpha.-Number = 1;

// Стиль линий. Используются скошенные соединения вместо закругленных // (настройка по умолчанию в языке ActionScript). Все остальные // первоначальные настройки совпадают с настройками по умолчанию языка // ActionScript.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.29
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 024
  • 22.01.2011">Руководство по actionscript. часть 1, стр. 101
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 148
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 009
  • 14.03.2011">Руководство по actionscript. часть 3, стр. 073
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.53
  • 01.03.2011">Руководство по actionscript. часть 5, стр. 108
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.160
  • 17.03.2011">Руководство по actionscript. часть 2, стр. 144
  • 15.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.44
  • 12.05.2014">Косметический ремонт квартиры
  • 17.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.120
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.89
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.90
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...