![]() |
Как правильно сложить BitmapData нужным способом?
Привет!
Есть два объекта BitmapData одинакового размера(bmp1 и bmp2). На них что то нарисовано, это может быть и картинка, не важно. Нужно получить третий объект BitmapData (bmp3) являющийся результатом сложения двух первых, с таким условием: Код:
if(bmp2.getPixel(x,y) > bmp1.getPixel(x,y))Меня интересует способ сложения BitmapData , будь то комбинация BlendMode или фильтр... или бог знает что :) Заранее спасибо за ответы! |
Отрисовать в 3 бмп дату сначало 1, потом 2... или 2, потом 1...
Отрисовывается методом draw |
методом draw будет складываться по альфаканалу, а мне нужно по цвету
т.е. если у меня Код:
color1 = 0xff0000;Код:
color3 = color2; //т.к. color2 > color1 |
грузим рисунки
http://dnadillo.dn.ua/images/imag/magna_carta_131.JPG http://dnadillo.dn.ua/images/imag/magna_carta_127.JPG в бит мапу ставим бленд моде blendMode="darken"; складываем их http://dnadillo.dn.ua/fla/in-2-1.swf http://dnadillo.dn.ua/fla/in-2-1.zip |
не помогает...
blendMode он сравнивает по каналам... а мне нужно что бы сразу по всему числу цвета... |
Если по точкам медленно, то можно по байтовому массиву. Надо уточнить, какое время обработки вас устроит.
Здесь в тесте, для двух картинок размером 2400x2400 время генерации результирующей: 2814 мс. Код:
var bmp1:BitmapData = new TestBmp1(0,0); //2400x2400 |
Цитата:
|
Цитата:
|
Цитата:
Суть такая есть два массива числовых данных, надо получить третий массив по указанному выше условию... Просто эти данные рисуются в битмап дате... так быстрее их генерить! А вот сравнивать не очень быстро... |
Хм у меня получилось получить 3й битмап где то в 4-5 раз быстрее чем через byteArray.
|
| Часовой пояс GMT +4, время: 10:50. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.