Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Инверсия цвета (http://www.flasher.ru/forum/showthread.php?t=110144)

CROL 27.03.2008 21:13

Инверсия цвета
 
Есть ли команда, которая инвертирует цвета мувиклипа? Например я хочу чтобы при наводке мыши на мувик цвета плавно инвертировались...

flash33 27.03.2008 21:30

Только для Вас!
http://www.alex-uhlmann.de/flash/ani...ative_doc.html

iNils 27.03.2008 21:38

Код:

new Color (имя клипа).setTransform ({ab:0, aa:100, bb:255, ba:-100, gb:255, ga:-100, rb:255, ra:-100});

CROL 28.03.2008 00:04

а как это плавно сделать не подскажете?

iNils 28.03.2008 07:55

Код:

import mx.transitions.Tween;
import mx.transitions.easing.None;
import mx.utils.Delegate;
import flash.geom.*;
//// рисуем квадрат
var mc:MovieClip = this.createEmptyMovieClip ("mc", this.getNextHighestDepth ());
var colors:Array = [0xFF0000, 0xFFFF00, 0x0000FF];
var alphas:Array = [100, 100, 100];
var ratios:Array = [0, 0x77, 0xFF];
var matrix:Matrix = new Matrix ();
matrix.createGradientBox (100, 100, Math.PI, 0, 0);
mc.beginGradientFill ("radial", colors, alphas, ratios, matrix, "reflect", "linearRGB", 0.9);
mc.moveTo (100, 100);
mc.lineTo (100, 300);
mc.lineTo (300, 300);
mc.lineTo (300, 100);
mc.lineTo (100, 100);
mc.endFill ();
var clr:Color = new Color (mc);
//// степень инверсиии (0-1)
var cx:Number = 0;
//// запускаем изменение степени с 0 до 1 в течении 50 кадров
var tween:Tween = new Tween (this, "cx", None.easeNone, 0, 1, 50);
//// подписываемся на событии изменния степени
tween.onMotionChanged = Delegate.create (this, onInverseChanged);
function onInverseChanged () {
        var value100 = 100 - 200 * cx;
        var value255 = 255 * cx;
        trace (value255 + " " + value100);
        clr.setTransform ({bb:value255, ba:value100, gb:value255, ga:value100, rb:value255, ra:value100});
}


CROL 28.03.2008 17:21

спасибо большое iNils


Часовой пояс GMT +4, время: 17:55.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.