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

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

Смешивание цвета


snake1977 ©   (2004-11-07 22:08:00) 

Здравствуйте! Есть цвет красный (255) и серый (12632256), как получить смесь этих цветов??


GuAV   (2004-11-07 22:23:00) [1]

default ©   (07.11.04 22:19) [4]
Ну так если 50 на 50 то [2] или [3]


default   (2004-11-07 22:19:00) [2]

KilkennyCat ©   (07.11.04 22:11) [1]
и тщательно перемешать!
помню кто-то говорил что цвета смешиваются так(может ошибаюсь...)
представить кубик 255*255*255
берёшь точку соответ-ую красному цвету и серому
записываешь уравнение прямой по этим точкам в простра-ве потом беря нужную точку на этой прямой получаешь смесь в нужном соотношении


Defunct   (2004-11-07 22:15:00) [3]

> snake1977   (07.11.04 22:08)  

Function MixColors(C1, C2: Integer): Integer;assembler;
Asm
 movd  mm7, EAx
 and   Ecx, $ff
 pxor  mm5, mm5
 movd  mm6, EDx
 punpcklbw mm7, mm5
 punpcklbw mm6, mm5
 paddw mm6, mm7
 psraw mm6, 1
 packuswb mm6, mm6
 movd  Eax, mm6
 emms
end;


(C) def
уже выкладывал где-то полтора месяца назад.


GuAV   (2004-11-07 22:14:00) [4]

KilkennyCat ©   (07.11.04 22:11) [1]
... и поделить на 2.

function GetMixedColorThursday(C1, C2: TColor): TColor;
begin
 Result:=C1 shr 1 and $7F7F7F + C2 shr 1 and $7F7F7F +
   C1 and C2 and $010101;
end;


не удивляться если синий+желтый = серый.


KilkennyCat   (2004-11-07 22:11:00) [5]

прибавить к красной части серого 255


Наверх

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