Руководство по actionscript. часть 5, стр. 027
1. Создать объект BitmapData.
2. Установить желаемые цвета пикселов в созданном объекте BitmapData.
3. Связать объект BitmapData с объектом Bitmap.
4. Добавить объект Bitmap в список отображения.
Попробуем применить эти шаги на практике!
Наша цель — отобразить квадрат синего цвета размером 10×10 пикселов по центру фонового квадрата зеленого цвета размером 20 х 20 пикселов. Сначала мы создадим объект BitmapData, используя следующий обобщенный код:
new BitmapData(ширина, высота, прозрачность, цветЗаливки)
Параметры ширина и высота обозначают размеры изображения в пикселах — максимальное значение, которое могут принимать данные параметры, равняется 2880. После создания объекта BitmapData изменить размеры изображения невозможно. Параметр прозрачность определяет, должно ли изображение поддерживать прозрачность отдельных пикселов (то есть может ли уровень канала Alpha значения цвета любого пиксела быть меньше 255). Если необходимости в поддержке прозрачности изображения нет, то параметру прозрачность должно быть установлено значение false, поскольку среда Flash отображает непрозрачные изображения быстрее, чем прозрачные. Наконец, параметр цветЗаливки задает значение цвета, которое изначально присваивается всем пикселам изображения.
Изображение, которое мы хотим создать, представляет собой квадрат размером 20 х 20 пикселов, для него не требуется прозрачности, и оно имеет фон зеленого цвета. Таким образом, чтобы создать наш объект BitmapData, мы используем следующий код:
// OxFFOOFFOO означает Alpha: 255, Red: 0. Green: 255. Blue: 0 var imgData:BitmapData = new BitmapData(20, 20, false, OxFFOOFFOO):
Теперь нам необходимо установить синий цвет для пикселов квадратной области размером 10 х 10 пикселов. Класс BitmapData предоставляет несколько инструментов для установки цвета пикселов: setPixel( ), setPixel32( ), setPixels ( ), fillRect ( ) и floodFill ( ). Для наших целей отлично подходит метод fillRect ( ) — он присваивает пикселам заданной прямоугольной области указанный цвет. Задаваемый нами объект Rectangle имеет ширину и высоту, равную 10 пикселам, а его левый верхний угол находится в точке с координатами (5; 5). В результате все пикселы растрового изображения, формирующие прямоугольную область от точки (5; 5) до точки (14; 14) включительно, будут окрашены в синий цвет.