По горячим следам нашего Quick Alpha Reflections Quick Tip поставляется этот превосходный служебный класс для динамического отражения ваших экранных объектов, предоставленный Мартином Кристовым .
Как мне это использовать?
Шаг 1:
Скопируйте файл ReflectEffect.as в classpath вашего проекта Flash (или в ту же директорию, что и FLA, если вы не используете classpath).
Шаг 2:
В своем коде создайте новый экземпляр класса ReflectEffect, передав ему экранный объект, который вы хотите, чтобы он отражал, следующим образом:
1
|
var reflect:ReflectEffect = new ReflectEffect(movieClipToReflect);
|
Шаг 3:
Создайте новую переменную для вашего отраженного объекта и добавьте ее на сцену (или где угодно):
1
2
3
|
var reflectedDown:Bitmap = reflect.down(length, fade, offset, blur, alpha);
reflectedDown.y = movieClipToReflect.y + movieClipToReflect.height;
addChild( reflectedDown );
|
Функцииlect.down (), refle.up (), refle.left () и refle.right () вернут растровое изображение вашего объекта, отраженное в этом направлении. (Требуется только параметр «length», остальные являются необязательными.) Как видите, у вас есть несколько интересных опций.
Я думаю, что «длина» ясна. Итак, давайте посмотрим на «исчезать». Например, если вы установите 40 для длины и 30 для затухания, отражение будет заканчиваться на 10 пикселей за фактическим отражением. Или, если вы хотите, вы можете установить 40 для длины и 50 для затухания. Это заставит отражение перейти от альфа 1,0 к приблизительно 0,2.
Следующее очень интересно: «смещение». Это в основном перемещает ваше отражение вверх / вниз (или влево / вправо) внутри вывода растрового изображения. Я использую эту опцию в предварительном просмотре, чтобы вы могли перемещать объект и видеть эффект, подобный Mac.
Последние два параметра, «размытие» и «альфа», довольно понятны — посмотрите на комментарии в классе для получения дополнительной информации!
Наслаждайтесь, и дайте нам знать, как вы используете этот класс 🙂