Показать сообщение отдельно
Старый 07.07.2009, 14:04
Огнеметчик вне форума Посмотреть профиль Отправить личное сообщение для Огнеметчик Найти все сообщения от Огнеметчик
  № 8  
Ответить с цитированием
Огнеметчик

Регистрация: Jun 2006
Сообщений: 55
0.7*A + 0.3*B = C
0.3*B = C - 0.7*A
B = 10*(C - 0.7*A) / 3

Пусть C = 0x0000FF, A = 0xAAAAAA

0xAA * 0.7 = 0x77
0.7*A = 0x777777
(C - 0.7*A) = 0x0000FF - 0x777777 = 0x777788

А вот как теперь 0x777788 умножить на 10 и разделить на 3? Я перевел каждую компоненту цвета в десятичную систему, умножил на 10 и разделил на 3, в результате получил число большее чем 256. После перевода числа обратно в шестнадцатеричную систему, тоже получается трехзначное число...