vxg, альфа канал не нужен
16-битный цвет использует 5 бит для представления красной составляющей, 5 для синей, но 6 бит (26 = 64 возможных значения) для представления зелёной, так как человеческий глаз более чувствителен к зелёной составляющей. Таким образом получаются 65 536 (32×64×32) цветов
5 красного, 5 синего и 6 зеленого, думаю так.
ExFau$t, пользователю будет дана вспомогательная библиотека, которая поможет выбрать нужный цвет, у меня не обычные пользователи.
Кому интересно расскажу для чего такие извращения.
Есть промышленный протокол modbus, там регистры размером в 16 бит (2 байта) для обмена с контроллерами.
Контроллер будет задавать цвет через один регистр modbus, такая вот задача))
Добавлено через 11 минут
Кажется въезжаю как сделать.
Есть 16 битное число.
первые 5 бит вытащить и сохранить в int red;
следующие 6 бит вытащить и сохранить в int green;
и последние 5 бит вытащить и сохранить в int blue;
Потом Color.rgb(red, green, blue);
Осталось понять как наименьшими усилиями вытащить эти биты.
0
|