Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как усреднить цвета до одного цвета? [D6, WinXP]


ShAB_v2.0 ©   (2006-03-02 00:23:00) 

Как усреднить цвета пикселов прямоугольника до одного цвета


antonn   (2006-03-02 06:42:00) [1]

вот, была когда то у меня фенкция, вдруг поможет...

function GetCoefBack(BT:Tbitmap):double;
var x,y:integer; Row: PRGBArray; res:double;
begin
res:=0;
for y:=0 to 43 do begin
Row:=BT.ScanLine[y];
for x:=0 to 43 do begin  
res:=res+Row[x].rgbtRed*0.360+Row[x].rgbtGreen*0.530+Row[x].rgbtBlue*0.110;
end;              
end;
result:=res/(44*44);
end;


MBo   (2006-03-02 05:54:00) [2]

Выделить R,G,B составляющие, сложить их, поделить на количество, объединить в цвет.


XProger   (2006-03-02 00:40:00) [3]

Вру...


Color := Pixels[0];
for i := 1 to Pixels.Count - 1 do
Color := (Color + Pixels[i]) div 2;


P.S.
В любом случае конкретизируй вопрос.


XProger   (2006-03-02 00:35:00) [4]

Color := 0;
for i := 0 to Pixels.Count - 1 do
Color := (Color + Pixels[i] div 2;


Наверх

Титульная страница Поиск, карта сайта Написать письмо