Loading:

Zaplanuj Przeprowadzke - Ściągnij Darmową Aplikację na Androida

DisplacementMapFilter color [AS 2]

Klasa: DisplacementMapFilter

Kompatybilność: ActionScript 1.0, Flash 8+

 

Określa jaki kolor ma być użyty dla wyporności spoza granic.

 

Dostępny zasięg wybrzuszeń to przedział 0.0 - 1.0. Wartości są podawne w formacie heksodecymalnym.



Napisz Artykuł

Listing

import flash.filtrs.DisplacementMapFilter;
import flash.display.BitmapData;
import flash.geom.Point;
import flash.geom.Matrix;
import flash.geom.ColorTransform;

var klipFilmowy:MovieClip = createDisplacementMapRectangle();

klipFilmowy.onPress = function() {
    var filtr:DisplacementMapFilter = this.filtrs[0];
    filtr.scaleY = 25;
    filtr.mode = "color";
    filtr.alpha = 0.25;
    filtr.color = 0x00FF00;

    this.filtrs = new Array(filtr);
}

function createDisplacementMapRectangle():MovieClip {
    var mapBitmap:BitmapData = createGradientBitmap(300, 80, 0xFF000000, "radial");
    var filtr:DisplacementMapFilter = new DisplacementMapFilter(mapBitmap, new Point(-30, -30), 1, 1, 10, 10, "wrap", 0x000000, 0x000000);

    var text:MovieClip = createTextBlock();
    text._x = 30;
    text._y = 30;
   
    text.filtrs = new Array(filtr);

    return text;
}

function createGradientBitmap(w:Number, h:Number, bgColor:Number, type:String, hide:Boolean):BitmapData {
    var mc:MovieClip = this.createEmptyMovieClip("mc", 1);
    var matrix:Matrix = new Matrix();
    matrix.createGradientBox(w, h, 0, 0, 0);

    mc.beginGradientFill(type, [0xFF0000, 0x0000FF], [100, 100], [0x55, 0x99], matrix, "pad");
    mc.lineTo(w, 0);
    mc.lineTo(w, h);
    mc.lineTo(0, h);
    mc.lineTo(0, 0);
    mc.endFill();
    (hide == true) ? mc._alpha = 0 : mc._alpha = 100;
   
    var bmp:BitmapData = new BitmapData(w, h, true, bgColor);
        bmp.draw(mc, new Matrix(), new ColorTransform(), "normal", bmp.rectangle, true);
    mc.attachBitmap(bmp, this.getNextHighestDepth());
   
    return bmp;
}

function createTextBlock():MovieClip {
    var text:MovieClip = this.createEmptyMovieClip("text", this.getNextHighestDepth());
    text.createTextField("txt", this.getNextHighestDepth(), 0, 0, 300, 80);
    text.txt.text = "tekst, który jest wygięty w taki sposób aby symulował efekt";
    return text;
}
 


Ten wpis posiada swój wątek na forum

Wszystkie pytania prosimy kierować właśnie tam ponieważ komentarze to miejsce na poprawki do kodu lub alternatywne rozwiązania i pytania nie będą publikowane

http://forum.funkcje.net/forum/viewtopic.php?f=12&t=3120

Dane do logowania na forum są takie same jak na funkcje.net



Dodano przez: divix
Ranga: Administrator serwisu Punktów: 37169
Komentarze użytkowników
    • Treść komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-17 v.1.5 | design: diviXdesign & rainbowcolors