Главная / Action Script 3
Пакетflash.geom
Классpublic class ColorTransform
НаследованиеColorTransform Inheritance Object
Подклассы Color

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Класс ColorTransform позволяет изменять значения цвета в экранном объекте. Настройку цвета или преобразование цвета можно применить ко всем четырем каналам: красный, зеленый, синий и альфа-прозрачность.

Когда объект ColorTransform применяется к экранному объекту, новое значение для каждого цветового канала вычисляется следующим образом:

Если после вычисления значение цветового канала превышает 255, для него настраивается значение 255. Если значение меньше 0, задается значение 0.

Объекты ColorTransform можно использовать следующими способами:

Необходимо использовать конструктор new ColorTransform() для создания объекта ColorTransform перед вызовом методов объекта ColorTransform.

Преобразования цветов не применяются к цвету фона фрагмента ролика (например, загруженный объект SWF). Они применяются только к изображениям и символам, прикрепленным к фрагменту ролика.

Посмотреть примеры

См. также

flash.geom.Transform
flash.display.DisplayObject.transform
flash.display.BitmapData.colorTransform()


Общедоступные свойства
 СвойствоОпределено
  alphaMultiplier : Number
Десятичное значение, умножаемое на значение канала альфа-прозрачности.
ColorTransform
  alphaOffset : Number
Число от -255 до 255, добавляемое к значению красного канала после умножения на значение alphaMultiplier.
ColorTransform
  blueMultiplier : Number
Десятичное значение, умножаемое на значение синего канала.
ColorTransform
  blueOffset : Number
Число от -255 до 255, добавляемое к значению красного канала после умножения на значение blueMultiplier.
ColorTransform
  color : uint
Значение цвета RGB для объекта ColorTransform.
ColorTransform
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  greenMultiplier : Number
Десятичное значение, умножаемое на значение зеленого канала.
ColorTransform
  greenOffset : Number
Число от -255 до 255, добавляемое к значению красного канала после умножения на значение greenMultiplier.
ColorTransform
 Inheritedprototype : Object
[статические] Ссылка на модель объекта класса или функции.
Object
  redMultiplier : Number
Десятичное значение, умножаемое на значение красного канала.
ColorTransform
  redOffset : Number
Число от -255 до 255, добавляемое к значению красного канала после умножения на значение redMultiplier.
ColorTransform
Общедоступные методы
 МетодОпределено
  
ColorTransform(redMultiplier:Number = 1.0, greenMultiplier:Number = 1.0, blueMultiplier:Number = 1.0, alphaMultiplier:Number = 1.0, redOffset:Number = 0, greenOffset:Number = 0, blueOffset:Number = 0, alphaOffset:Number = 0)
Создает объект ColorTransform для экранного объекта в заданными значениями цветовых каналов и значениями альфа-канала.
ColorTransform
  
Сцепляет объект ColorTransform, заданный параметром второй, с текущим объектом ColorTransform и задает текущий объект в качестве результата, представляющего собой аддитивную (полученную сложением) комбинацию двух преобразований цвета.
ColorTransform
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
  
Форматирует объект ColorTransform и возвращает строку с описанием всех его свойств.
ColorTransform
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Сведения о свойстве
alphaMultiplierсвойство
public var alphaMultiplier:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Десятичное значение, умножаемое на значение канала альфа-прозрачности.

Если значение альфа-прозрачности экранного объекта задано напрямую с помощью свойства alpha экземпляра DisplayObject, оно влияет на значение свойства alphaMultiplier свойства transform.colorTransform экранного объекта.

См. также

alphaOffsetсвойство 
public var alphaOffset:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Число от -255 до 255, добавляемое к значению канала альфа-прозрачности после умножения на значение alphaMultiplier.

blueMultiplierсвойство 
public var blueMultiplier:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Десятичное значение, умножаемое на значение синего канала.

blueOffsetсвойство 
public var blueOffset:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Число от -255 до 255, добавляемое к значению синего канала после умножения на значение blueMultiplier.

colorсвойство 
color:uint  [чтение и запись]

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Значение цвета RGB для объекта ColorTransform.

При настройке этого свойства изменяются три значения коррекции цвета (redOffset, greenOffset и blueOffset) соответственно и для трех значений множителя цвета (redMultiplier, greenMultiplier и blueMultiplier) задается значение 0. Множитель и значения коррекции альфа-прозрачности не изменяются.

При передаче значения для этого свойства необходимо использовать формат 0xRRGGBB. Каждое значение RR, GG и BB состоит из двух шестнадцатеричных чисел, которые задают коррекцию каждого компонента цвета. Значение 0x указывает компилятору ActionScript, что число является шестнадцатеричным значением.



Реализация
    public function get color():uint
    public function set color(value:uint):void
greenMultiplierсвойство 
public var greenMultiplier:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Десятичное значение, умножаемое на значение зеленого канала.

greenOffsetсвойство 
public var greenOffset:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Число от -255 до 255, добавляемое к значению зеленого канала после умножения на значение greenMultiplier.

redMultiplierсвойство 
public var redMultiplier:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Десятичное значение, умножаемое на значение красного канала.

redOffsetсвойство 
public var redOffset:Number

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Число от -255 до 255, добавляемое к значению красного канала после умножения на значение redMultiplier.

Сведения о конструкторе
ColorTransform()Конструктор
public function ColorTransform(redMultiplier:Number = 1.0, greenMultiplier:Number = 1.0, blueMultiplier:Number = 1.0, alphaMultiplier:Number = 1.0, redOffset:Number = 0, greenOffset:Number = 0, blueOffset:Number = 0, alphaOffset:Number = 0)

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Создает объект ColorTransform для экранного объекта в заданными значениями цветовых каналов и значениями альфа-канала.

Параметры
redMultiplier:Number (default = 1.0) — Значение множителя красного цвета лежит в диапазоне от 0 до 1.
 
greenMultiplier:Number (default = 1.0) — Значение множителя зеленого цвета лежит в диапазоне от 0 до 1.
 
blueMultiplier:Number (default = 1.0) — Значение множителя синего цвета лежит в диапазоне от 0 до 1.
 
alphaMultiplier:Number (default = 1.0) — Значение множителя альфа-прозрачности лежит в диапазоне от 0 до 1.
 
redOffset:Number (default = 0) — Значение коррекции для канала красного цвета находится в диапазоне от -255 до 255.
 
greenOffset:Number (default = 0) — Значение коррекции для канала зеленого цвета находится в диапазоне от -255 до 255.
 
blueOffset:Number (default = 0) — Коррекция для значения канала синего цвета находится в диапазоне от -255 до 255.
 
alphaOffset:Number (default = 0) — Коррекция для значения канала альфа-прозрачности находится в диапазоне от -255 до 255.
Сведения о методе
concat()метод
public function concat(second:ColorTransform):void

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Выполняет сцепление объекта ColorTranform, заданного параметром second, с текущим объектом ColorTransform и задает текущий объект в качестве результата, представляющего собой аддитивную (полученную сложением) комбинацию двух преобразований цвета. При применении сцепленного объекта ColorTransform получается такой же эффект, что и при применении преобразования цвета second после преобразования цвета original.

Параметры

second:ColorTransform — Объект ColorTransform для комбинирования с текущим объектом ColorTransform.

toString()метод 
public function toString():String

Язык версии : ActionScript 3.0
Версии среды выполнения:  1.0 9

Форматирует объект ColorTransform и возвращает строку с описанием всех его свойств.

Возвращает
String — Строка, в которой перечислены все свойства объекта ColorTransform.
Примеры Как пользоваться примерами
ColorTransformExample.as

В следующем примере класс TransformExample используется для создания простого спрайта в форме квадрата с заливкой с использованием градиентного шаблона. При каждом щелчке квадрата мышью в приложении выполняется преобразование цветов квадратного спрайта, добавление значения каналу красного цвета и осветление канала синего цвета. Это можно сделать, выполнив следующие действия:
  1. Конструктор создает новый объект спрайта target.
  2. Конструктор CustomButton() вызывает метод draw(), который рисует градиентный квадрат в спрайте.
  3. Конструктор CustomButton() добавляет слушатель событий щелчка для спрайта, который обрабатывается методом clickHandler().
  4. В методе clickHandler() два свойства заданы для свойств redOffset и blueOffset текущего преобразования цвета. Для каждого настроено значение 25. Затем свойство transform.colorTransform квадратного спрайта изменяется для использования новых значений коррекции. При каждом щелчке квадрата мышью происходит обращение к методу clickHandler() и цвет квадрата изменяется путем увеличения значения красного цвета и уменьшения значения синего цвета.
package {
    import flash.display.Sprite;
    import flash.display.GradientType;
    import flash.geom.ColorTransform;
    import flash.events.MouseEvent;

    public class ColorTransformExample extends Sprite {
        public function ColorTransformExample() {
            var target:Sprite = new Sprite();
            draw(target);
            addChild(target);
            target.useHandCursor = true;
            target.buttonMode = true;
            target.addEventListener(MouseEvent.CLICK, clickHandler)
        }
        public function draw(sprite:Sprite):void {
            var red:uint = 0xFF0000;
            var green:uint = 0x00FF00;
            var blue:uint = 0x0000FF;
            var size:Number = 100;
            sprite.graphics.beginGradientFill(GradientType.LINEAR, [red, blue, green], [1, 0.5, 1], [0, 200, 255]);
            sprite.graphics.drawRect(0, 0, 100, 100);
        }
        public function clickHandler(event:MouseEvent):void {
            var rOffset:Number = transform.colorTransform.redOffset + 25;
            var bOffset:Number = transform.colorTransform.redOffset - 25;
            this.transform.colorTransform = new ColorTransform(1, 1, 1, 1, rOffset, 0, bOffset, 0);
        }
    }
}