Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   ConvolutionFilter делает изображение чёрным (http://www.flasher.ru/forum/showthread.php?t=207318)

am_devcorp 08.04.2014 22:19

ConvolutionFilter делает изображение чёрным
 
Было лень реализовывать свёртку руками, решил взять стандартную.
bd1 и bd2 нормальные, то есть сами по себе отображаются, а вот bdresult весь чёрный.

Собсна код:

Код AS3:

                public var filter:Array = [[ -1, -1, -1, -1, -1], [ -1, -1, -1, -1, -1], [ -1, -1, 24, -1, -1], [ -1, -1, -1, -1, -1], [ -1, -1, -1, -1, -1]];
                ...
                public function cb(bd1:BitmapData, bd2:BitmapData):void
                {
                        trace(bd1.width, bd2.height)
                        var divisor:Number = 1;
                        var bias:Number = 0;
                        var preserveAlpha:Boolean = true;
                        var clamp:Boolean = true;
                        var cfilter:ConvolutionFilter = new ConvolutionFilter(5, 5, filter, divisor, bias, preserveAlpha, clamp, 0)
                        var bdresult:BitmapData = new BitmapData(bd1.width,bd1.height,false,0)
                        bdresult.applyFilter(bd1, bd1.rect, new Point(), cfilter);
                        this.addChild(new Bitmap(bdresult))
 
                }


UPD Отбой тревоги, я понял, что filter должен быть одномерным, стало быть [-1, -1, -1, ... , 24, ... ,-1,-1,-1]


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

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