Емельянов Эдуард Владимирович (eddy_em) wrote,
Емельянов Эдуард Владимирович
eddy_em

Category:

Colormaps

Что-то не могу найти вменяемых формул для определения разных палитр. Глянул в ds9 - а там через таблицы задается, что неудобно (да еще и значений полно)...
Гугол молчит, ничего мне говорить не хочет.. Или я разучился правильно гуглить. Вылезает какой-то бред на пхытоне, из которого ничего путного понять невозможно...

Где найти нормальные формулы для красивых палитр? Вот пример палитры, которую я использовал в fitsview для раскрашивания превьюшек фитсов при открывании файлов:

static void palette_BR(double gray, uint8_t *rgb){
	int i = (int)(gray * 4.);
	double x = 4.*gray - (double)i;
	uint8_t r = 0, g = 0, b = 0;
	switch(i){
		case 0:
			g = (uint8_t)(255. * x);
			b = 255;
		break;
		case 1:
			g = 255;
			b = (uint8_t)(255. * (1. - x));
		break;
		case 2:
			r = (uint8_t)(255. * x);
			g = 255;
		break;
		case 3:
			r = 255;
			g = (uint8_t)(255. * (1. - x));
		break;
		default:
			r = 255;
	}
	rgb[0] = r;
	rgb[1] = g;
	rgb[2] = b;
}

А вот так выглядит тупая "серая" палитра:
static void palette_gray(double gray, uint8_t *rgb){
    rgb[0] = rgb[1] = rgb[2] = (uint8_t)(255.*gray);
}

Хочу еще штук пять популярных в библиотеку добавить.

Вот какие палитры пока у меня получились:
Просто серый

От синего к красному (из кода выше)

«Hot»

«Jet»

Tags: c, всячина, рукожопие
Subscribe

  • Баги в сборке кикада

    Просто оставлю на память: для того, чтобы свежий кикад собрался, нужно указать: cmake ../ -DKICAD_SCRIPTING_MODULES=no -DKICAD_SCRIPTING_WXPYTHON=no…

  • Неортогональные координаты

    Всю неделю возился с корректором оптоволоконного спектрографа. Мужики с какого-то перепуга решили, что будет очень забавно сделать оси под углом…

  • Зачем люди форкают репозитории?

    В который раз смотрю статистику на гитхабе и вижу, что в очередной раз кто-то форкнул какой-нибудь из моих репозиториев. Но при этом вообще не вносит…

promo eddy_em august 17, 2019 12:33 3
Buy for 10 tokens
Юра намедни напечатал корпус для хронометра. Для первого блина получилось неплохо: И еще немного фотографий:
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic
  • 10 comments

  • Баги в сборке кикада

    Просто оставлю на память: для того, чтобы свежий кикад собрался, нужно указать: cmake ../ -DKICAD_SCRIPTING_MODULES=no -DKICAD_SCRIPTING_WXPYTHON=no…

  • Неортогональные координаты

    Всю неделю возился с корректором оптоволоконного спектрографа. Мужики с какого-то перепуга решили, что будет очень забавно сделать оси под углом…

  • Зачем люди форкают репозитории?

    В который раз смотрю статистику на гитхабе и вижу, что в очередной раз кто-то форкнул какой-нибудь из моих репозиториев. Но при этом вообще не вносит…