Пакет | flash.geom |
Класс | public class Transform |
Наследование | Transform ![]() |
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
concatenatedColorTransform
и concatenatedMatrix
.
Для применения преобразований цвета: создайте объект ColorTransform, задайте настройки цвета, используя методы и свойства объекта, затем назначьте свойство colorTransformation
свойства transform
экранного объекта новому объекту ColorTransformation.
Для применения двухмерных преобразований: создайте объект Matrix, задайте двухмерное преобразование матрицы, затем назначьте свойство transform.matrix
экранного объекта новому объекту Matrix.
Для применения трехмерных преобразований: начните с создания трехмерного экранного объекта. Трехмерный экранный объект имеет значение свойства z
, отличное от нуля. Создавать объект Matrix3D не требуется. Объект Matrix3D создается автоматически для всех трехмерных объектов, когда вы присваиваете значение z
экранному объекту. Доступ к объекту Matrix3D экранного объекта можно получить через свойство transform
экранного объекта. При помощи методов класса Matrix3D можно добавлять новые или модифицировать существующие параметры преобразования. Можно также создать пользовательский объект Matrix3D, задать элементы преобразования пользовательского объекта Matrix3D, затем назначить новый объект Matrix3D экранному объекту при помощи свойства transform.matrix
.
Для модификации перспективной проекции рабочей области или корневого объекта: при помощи свойства transform.matrix
корневого экранного объекта получите доступ к объекту PerspectiveProjection. Или примените к экранному объекту другие свойства перспективной проекции, задав свойства перспективной проекции для родительского объекта экранного объекта. Дочерний экранный объект унаследует новые свойства. А именно, создайте объект PerspectiveProjection и задайте его свойства, затем назначьте объект PerspectiveProjection свойству perspectiveProjection
свойства transform
родительского экранного объекта. Заданное преобразование проекции будет применено ко всем трехмерным дочерним элементам экранного объекта.
Так как и объект PerspectiveProjection, и объект Matrix3D выполняют перспективные преобразования, не назначайте оба эти объекта экранному объекту одновременно. Используйте объект PerspectiveProjection для изменения фокусного расстояния и центра проекции. Для расширенного управления перспективным преобразованием создайте объект перспективной проекции Matrix3D.
См. также
Свойство | Определено | ||
---|---|---|---|
colorTransform : ColorTransform
Объект ColorTransform содержит значения для универсальной коррекции цветов экранного объекта. | Transform | ||
concatenatedColorTransform : ColorTransform [только для чтения]
Объект ColorTransform, представляющий объединенные преобразования цвета, применяемые к экранному объекту и всем его родительским объектам, вплоть до корневого уровня. | Transform | ||
concatenatedMatrix : Matrix [только для чтения]
Объект Matrix, представляющий объединенные матрицы преобразования экранного объекта и всех его родительских объектов, вплоть до корневого уровня. | Transform | ||
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
matrix : Matrix
Объект Matrix, содержащий значения, влияющие на масштабирование, поворот и перемещение экранного объекта. | Transform | ||
matrix3D : Matrix3D
Обеспечивает доступ к объекту Matrix3D трехмерного экранного объекта. | Transform | ||
perspectiveProjection : PerspectiveProjection
Обеспечивает доступ к объекту PerspectiveProjection трехмерного экранного объекта. | Transform | ||
pixelBounds : Rectangle [только для чтения]
Объект Rectangle, определяющий ограничительный прямоугольник экранного объекта в рабочей области. | Transform | ||
![]() | prototype : Object [статические]
Ссылка на модель объекта класса или функции. | Object |
Метод | Определено | ||
---|---|---|---|
Возвращает объект Matrix3D, который может преобразовать пространство заданного экранного объекта относительно пространства текущего экранного объекта. | Transform | ||
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Возвращает строковое представление заданного объекта. | Object | |
![]() |
Возвращает элементарное значение заданного объекта. | Object |
colorTransform | свойство |
colorTransform:ColorTransform
[чтение и запись] Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Объект ColorTransform содержит значения для универсальной коррекции цветов экранного объекта.
public function get colorTransform():ColorTransform
public function set colorTransform(value:ColorTransform):void
TypeError — Объект colorTransform является нулевым при добавлении
|
См. также
concatenatedColorTransform | свойство |
concatenatedColorTransform:ColorTransform
[только для чтения] Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Объект ColorTransform, представляющий объединенные преобразования цвета, применяемые к экранному объекту и всем его родительским объектам, вплоть до корневого уровня. Если различные преобразования цвета применены на разных уровнях, для этого свойства выполняется сцепление всех этих преобразований для создания одного объекта ColorTransform.
public function get concatenatedColorTransform():ColorTransform
См. также
concatenatedMatrix | свойство |
concatenatedMatrix:Matrix
[только для чтения] Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Объект Matrix, представляющий объединенные матрицы преобразования экранного объекта и всех его родительских объектов, вплоть до корневого уровня. Если различные матрицы преобразования применены на разных уровнях, для этого свойства выполняется сцепление этих матриц в одну матрицу.
public function get concatenatedMatrix():Matrix
matrix | свойство |
matrix:Matrix
[чтение и запись] Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Объект Matrix, содержащий значения, влияющие на масштабирование, поворот и перемещение экранного объекта.
public function get matrix():Matrix
public function set matrix(value:Matrix):void
TypeError — Матрица является нулевой при добавлении
|
См. также
matrix3D | свойство |
matrix3D:Matrix3D
[чтение и запись] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Обеспечивает доступ к объекту Matrix3D трехмерного экранного объекта. Класс Matrix3D представляет матрицу преобразования, которая определяет положение и ориентацию экранного объекта. Кроме того, класс Matrix3D позволяет выполнять перспективную проекцию.
flash10 function get matrix3D():Matrix3D
flash10 function set matrix3D(value:Matrix3D):void
См. также
perspectiveProjection | свойство |
perspectiveProjection:PerspectiveProjection
[чтение и запись] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Обеспечивает доступ к объекту PerspectiveProjection трехмерного экранного объекта. При помощи объекта PerspectiveProjection можно модифицировать перспективное преобразование рабочей области или назначать перспективное преобразование всем трехмерным дочерним элементам экранного объекта.
Объект PerspectiveProjection по умолчанию назначается корневому объекту на основе поля обзора и соотношения сторон (размеров) рабочей области.
flash10 function get perspectiveProjection():PerspectiveProjection
flash10 function set perspectiveProjection(value:PerspectiveProjection):void
См. также
pixelBounds | свойство |
pixelBounds:Rectangle
[только для чтения] Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Объект Rectangle, определяющий ограничительный прямоугольник экранного объекта в рабочей области.
public function get pixelBounds():Rectangle
getRelativeMatrix3D | () | метод |
flash10 function getRelativeMatrix3D(relativeTo:DisplayObject):Matrix3D
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Возвращает объект Matrix3D, который может преобразовать пространство заданного экранного объекта относительно пространства текущего экранного объекта. Метод getRelativeMatrix3D()
можно использовать для перемещения одного трехмерного экранного объекта относительно другого трехмерного экранного объекта.
Параметры
relativeTo:DisplayObject — Экранный объект, относительно которого осуществляется преобразование. Чтобы получить объект Matrix3D относительно рабочей области, установите этот параметр на объект root или stage . Чтобы получить матрицу экранного объекта относительно мировых координат, установите этот параметр на экранный объект, к которому было применено перспективное преобразование.
|
Matrix3D — Объект Matrix3D, который можно использовать для преобразования пространства текущего экранного объекта относительно пространства экранного объекта relativeTo .
|
См. также
TransformExample()
создает новый объект спрайта target
.TransformExample()
вызывает метод draw()
, который рисует градиентный квадрат в спрайте.TransformExample()
добавляет слушатель событий щелчка для спрайта, который обрабатывается методом clickHandler()
. clickHandler()
создает новый объект Matrix, skewMatrix
, настроенный для применения наклона. Другая матрица, tempMatrix
, назначается текущей матрице преобразования спрайта, а затем она комбинируется с методом skewMatrix
с помощью метода concat()
. Эта матрица назначается свойству transform.matrix
квадратного спрайта. При каждом щелчке квадрата мышью вызывается метод clickHandler()
и изменяется форма квадрата путем его наклона. clickHandler()
создает новый объект ColorTransform. Для свойства redOffset
нового объекта ColorTransform задается текущее значение redOffset, увеличенное на 25. Таким же образом значение свойства blueOffset
уменьшается на 25. При каждом щелчке цвет спрайта изменяется. package { import flash.display.Sprite; import flash.display.GradientType; import flash.geom.Matrix; import flash.geom.ColorTransform; import flash.events.MouseEvent; public class TransformExample extends Sprite { public function TransformExample() { 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 skewMatrix:Matrix = new Matrix(); skewMatrix.c = 0.25; var tempMatrix:Matrix = this.transform.matrix; tempMatrix.concat(skewMatrix); this.transform.matrix = tempMatrix; var rOffset:Number = this.transform.colorTransform.redOffset + 25; var bOffset:Number = this.transform.colorTransform.blueOffset - 25; this.transform.colorTransform = new ColorTransform(1, 1, 1, 1, rOffset, 0, bOffset, 0); } } }