Титла: JAVA, RGB + малко математика Публикувано от: Oxy в May 23, 2011, 17:17 Здравейте! Преди няколко дни се сблъсках с интересен проблем, който не знам как да реша...
Сценария е следния: В джава чета някакво ПНГ с 24 битови цветове(тоева са по 8 бита на цвят зелен/червен/син) тоест по 256 комбинации... + алфа канал сега въпроса е как да сметна цвета от 8 битово червено в 3 битово червено... въпроса е по-скоро математически, тъй като ргб пространството е 3д, тоест даден цвят = (червена стойност, зелена стойност, синя стойност) разстоянието между 2 точки мога да го намеря, но не мога да намаля дълбочината на цветовете.. формулата за превръщане от 8бит червен канал в 1 битов червен канал е следната: int r = (c.getRed() + 128) / 256 * 255; като c e обект class Color и после това връща 2 стойности 0 или 255, това съответно е едно битова стойност на канала... някакви идеи за математиката на това чудо? |