Loading:


    DisplacementMapFilter mode [AS 2]

    Klasa: DisplacementMapFilter

    Kompatybilność: ActionScript 1.0, Flash 8+

     

    Tryb dla filtru.

     

    Dostępne wartości:

     

    • "wrap" -- Zawija wybrzuszone wartości na druga strone obrazu. Domyślna wartość.
    • "clamp" -- Ściska wybrzuszone wartości na rogi obrazu.
    • "ignore" -- Jeśli wartość wybrzuszona jest poza zasięgiem, wtedy ignoruje wybrzuszenia i używa źródłowych pikseli.
    • "color" -- Jeśli wartość wybrzuszona jest poza zasięgiem, wtedy zastępcze piksele są tworzone z właściwości alpha oraz color tego filtru.


    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;
        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;
    }
     




    Dodano przez: divix
    Ranga: Administrator serwisu Punktów: 0
    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-2025 v.1.5 | design: diviXdesign & rainbowcolors