experiment on falsecolors
This commit is contained in:
parent
378a1046a0
commit
a67809b4e8
39
Lib/falsecolors.c
Normal file
39
Lib/falsecolors.c
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
/*
|
||||||
|
* FALSECOLORS.C
|
||||||
|
*
|
||||||
|
* new: Wed Oct 4 07:32:36 UTC 2023
|
||||||
|
*
|
||||||
|
* see also calcluts.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
|
#include "../tthimage.h"
|
||||||
|
|
||||||
|
/*::------------------------------------------------------------------::*/
|
||||||
|
/*::------------------------------------------------------------------::*/
|
||||||
|
int Image_gen_fc_lut(float maxval, int nbslots, RGB_map *plut)
|
||||||
|
{
|
||||||
|
int idx, ilut;
|
||||||
|
float fval;
|
||||||
|
|
||||||
|
fprintf(stderr, ">>> %s ( %f %d %p )\n", __func__, maxval, nbslots, plut);
|
||||||
|
|
||||||
|
/* RAZ de les luts */
|
||||||
|
memset(plut, 0, sizeof(RGB_map));
|
||||||
|
|
||||||
|
for (idx=0; idx<nbslots; idx++) {
|
||||||
|
fval = (float)idx / (float)nbslots;
|
||||||
|
ilut = (int)(fval*256.0);
|
||||||
|
fprintf(stderr, " %3d %8.6f %3d\n", idx, fval, ilut);
|
||||||
|
}
|
||||||
|
|
||||||
|
return FULL_NUCKED;
|
||||||
|
}
|
||||||
|
/*::------------------------------------------------------------------::*/
|
||||||
|
/*::------------------------------------------------------------------::*/
|
78
Lib/foo.c
78
Lib/foo.c
@ -7,6 +7,20 @@
|
|||||||
#include "../tthimage.h"
|
#include "../tthimage.h"
|
||||||
|
|
||||||
/* ============================== */
|
/* ============================== */
|
||||||
|
|
||||||
|
int essai_false_colors(void)
|
||||||
|
{
|
||||||
|
int foo;
|
||||||
|
RGB_map luts;
|
||||||
|
|
||||||
|
foo = Image_gen_fc_lut(27e3, 33, &luts);
|
||||||
|
fprintf(stderr, "retour gen_fc_lut = %d\n", foo);
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ============================== */
|
||||||
|
|
||||||
int essai_show_t16x24( char *text)
|
int essai_show_t16x24( char *text)
|
||||||
{
|
{
|
||||||
if (NULL != text)
|
if (NULL != text)
|
||||||
@ -28,69 +42,25 @@ foo = Image_plot_V_gradient("foo.tga", 900, 200);
|
|||||||
fprintf(stderr, "plot v gradient -> %d\n", foo);
|
fprintf(stderr, "plot v gradient -> %d\n", foo);
|
||||||
}
|
}
|
||||||
/* ============================== */
|
/* ============================== */
|
||||||
int essai_draw_paint_rect(char *outga)
|
|
||||||
{
|
|
||||||
Image_Desc *img;
|
|
||||||
Image_Rect rect;
|
|
||||||
int foo, x, y;
|
|
||||||
|
|
||||||
fprintf(stderr, ">>> %s ( '%s' )\n", __func__, outga);
|
|
||||||
|
|
||||||
rect.x = 8; rect.y = 8;
|
|
||||||
rect.w = 6; rect.h = 6;
|
|
||||||
|
|
||||||
if (NULL==(img=Image_alloc(64, 32, 3))) {
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
for (x=0; x<img->width; x+=2) {
|
|
||||||
for (y=0; y<img->height; y+=2) {
|
|
||||||
Image_plotRGB(img, x, y, 200, 200, 200);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
foo = Image_draw_rect(img, &rect, 192, 128, 64);
|
|
||||||
if (foo) {
|
|
||||||
fprintf(stderr, "%s: err %d draw rect\n", __func__, foo);
|
|
||||||
return foo;
|
|
||||||
}
|
|
||||||
|
|
||||||
rect.x = 24;
|
|
||||||
foo = Image_paint_rect(img, &rect, 64, 128, 192);
|
|
||||||
if (foo) {
|
|
||||||
fprintf(stderr, "%s: err %d paint rect\n", __func__, foo);
|
|
||||||
return foo;
|
|
||||||
}
|
|
||||||
|
|
||||||
foo = Image_TGA_save(outga, img, 0);
|
|
||||||
if (foo) {
|
|
||||||
fprintf(stderr, "%s: err %d save '%s'\n", __func__, foo, outga);
|
|
||||||
return foo;
|
|
||||||
}
|
|
||||||
|
|
||||||
return OLL_KORRECT;
|
|
||||||
}
|
|
||||||
/* ============================== */
|
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
|
||||||
fprintf(stderr, "*** %s is running\n", argv[0]);
|
fprintf(stderr, "*** %s is running\n", argv[0]);
|
||||||
|
|
||||||
essai_gradients();
|
if (argc > 1) {
|
||||||
|
fprintf(stderr, "argument: %s\n", argv[1]);
|
||||||
#if 0
|
Image_print_version(0);
|
||||||
Image_print_version(2);
|
Image_print_sizeof_structs("foo");
|
||||||
Image_print_sizeof_structs("foo");
|
}
|
||||||
|
else {
|
||||||
|
essai_false_colors();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
foo = essai_show_t16x24(NULL);
|
foo = essai_show_t16x24(NULL);
|
||||||
fprintf(stderr, "essai show t16x24 --> %d\n", foo);
|
fprintf(stderr, "essai show t16x24 --> %d\n", foo);
|
||||||
|
*/
|
||||||
foo = essai_draw_paint_rect("foo.tga");
|
|
||||||
fprintf(stderr, "essai draw rect --> %d\n", foo);
|
|
||||||
|
|
||||||
Image_egalise_cos01(NULL, NULL, 0);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user