Показать сообщение отдельно
Старый 03.04.2009, 07:32
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 4  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
вот что у меня получилось методом "тупого" нахождения средних значений цветовых компонент
Код AS3:
public function findFrameColour( $source:BitmapData ):uint
{
	var r:Number = 0;
	var g:Number = 0;
	var b:Number = 0;
 
	var pCount:Number = $source.width * $source.height;
	var pixel:Number;
 
	for (var px:int = 0; px < $source.width; px++)
	{
		for (var py:int = 0; py < $source.height; py++)
		{
			pixel = $source.getPixel(px, py);
 
			r += pixel >> 16 & 0xFF;
			g += pixel >> 8 & 0xFF;
			b += pixel & 0xFF;
		}
	}
 
	r /= pCount;
	g /= pCount;
	b /= pCount;
 
	return r << 16 | g << 8 | b;
}
Но не всегда он выдает нормальный результат.
Может есть более гармоничный (в плане результирующего цвета) алгоритм?

С histogram() идея понятна, но это все таки под 10-ку, пока не очень хочется на нее ориентироваться....
__________________
trace("Остановите Землю, я сойду!!!");


Последний раз редактировалось Mur4ik; 03.04.2009 в 07:44.