forked from tTh/FloatImg
cosmetic
This commit is contained in:
parent
85dbf384bd
commit
11e87efd67
@ -19,6 +19,9 @@ OBJS = fimg-png.o fimg-tiff.o misc-plots.o filtrage.o utils.o \
|
|||||||
|
|
||||||
#---------------------------------------------------------------
|
#---------------------------------------------------------------
|
||||||
|
|
||||||
|
tests.o: tests.c tests.h $(DEPS)
|
||||||
|
gcc $(COPT) -I/usr/include/netpbm -c $<
|
||||||
|
|
||||||
t: t.c $(DEPS) ../libfloatimg.a tests.o
|
t: t.c $(DEPS) ../libfloatimg.a tests.o
|
||||||
gcc $(COPT) $< \
|
gcc $(COPT) $< \
|
||||||
tests.o \
|
tests.o \
|
||||||
@ -28,8 +31,9 @@ t: t.c $(DEPS) ../libfloatimg.a tests.o
|
|||||||
-ltiff \
|
-ltiff \
|
||||||
-lz -lm -o $@
|
-lz -lm -o $@
|
||||||
|
|
||||||
tests.o: tests.c tests.h $(DEPS)
|
tpnm: tpnm.c Makefile fimg-libpnm.o
|
||||||
gcc $(COPT) -I/usr/include/netpbm -c $<
|
gcc $(COPT) -I/usr/include/netpbm \
|
||||||
|
fimg-libpnm.o -lnetpbm $< -o $@
|
||||||
|
|
||||||
#---------------------------------------------------------------
|
#---------------------------------------------------------------
|
||||||
# upper-level functions
|
# upper-level functions
|
||||||
|
@ -2,34 +2,42 @@
|
|||||||
|
|
||||||
Plein de fonctions qu'il serait bon de documenter :)
|
Plein de fonctions qu'il serait bon de documenter :)
|
||||||
|
|
||||||
## PNG
|
|
||||||
|
|
||||||
__Attention__ : la bibliothèque `pnglite`actuellement utilisée pour lire
|
|
||||||
les fichiers PNG n'accepte que **certains** types de fichiers.
|
|
||||||
Et en particulier, elle brotche sur ceux produits par ImageMagick !
|
|
||||||
|
|
||||||
## FITS
|
|
||||||
|
|
||||||
Un Format de fichier utilisé en astronomie.
|
|
||||||
|
|
||||||
https://heasarc.gsfc.nasa.gov/docs/software/fitsio/c/c_user/node1.html
|
|
||||||
|
|
||||||
## DICOM
|
|
||||||
|
|
||||||
https://en.wikipedia.org/wiki/DICOM et ça semble bien compliqué :(
|
|
||||||
|
|
||||||
## Contours
|
## Contours
|
||||||
|
|
||||||
Détecter des contours est une activité respectable. Mais difficile.
|
Détecter des contours est une activité respectable. Mais difficile.
|
||||||
|
Une recherche dans la littérature s'impose.
|
||||||
|
|
||||||
## Exporter
|
## Exporter
|
||||||
|
|
||||||
Une méta-fonction qui va sauvegarder (dans la mesure de ses conséquences)
|
`fimg_exporter` est une méta-fonction qui va sauvegarder (dans la mesure de ses conséquences)
|
||||||
une image en fonction de l'extension du nom de fichier.
|
une image en fonction de l'extension du nom de fichier fourni.
|
||||||
|
|
||||||
|
### PNG
|
||||||
|
|
||||||
|
__Attention__ : la bibliothèque `pnglite` actuellement utilisée pour lire
|
||||||
|
les fichiers PNG n'accepte que certains types de fichiers.
|
||||||
|
Et en particulier, elle brotche sur ceux produits par ImageMagick !
|
||||||
|
|
||||||
|
### FITS
|
||||||
|
|
||||||
|
Ce format de fichier est utilisé en astronomie.
|
||||||
|
|
||||||
|
https://heasarc.gsfc.nasa.gov/docs/software/fitsio/c/c_user/node1.html
|
||||||
|
|
||||||
|
### DICOM
|
||||||
|
|
||||||
|
https://en.wikipedia.org/wiki/DICOM et ça semble bien compliqué,
|
||||||
|
donc ça reste pour le moment au stade de vague projet :(
|
||||||
|
|
||||||
## Sfx
|
## Sfx
|
||||||
|
|
||||||
Effets spéciaux divers.
|
Effets spéciaux divers. Ils sont répartis dans plusieurs fichiers
|
||||||
|
(`sfx[0-4].c`) sans raison de classement apparente.
|
||||||
|
|
||||||
|
Certains peuvent être directement utilisés
|
||||||
|
avec l'outil [../tools/fimgfx.c](fimgfx).
|
||||||
|
Leur paramétrage est trop sommaire.
|
||||||
|
|
||||||
La fonction `fimg_pixelize_h_rnd` est issue d'une idée qui m'est venue
|
La fonction `fimg_pixelize_h_rnd` est issue d'une idée qui m'est venue
|
||||||
dans la roulotte de TerreBlanque. Elle a besoin de recherches sur la
|
dans la roulotte de TerreBlanque. Elle a besoin de recherches sur la
|
||||||
@ -38,3 +46,7 @@ dynamique temporelle, et d'une FSM à trois états.
|
|||||||
## Dithering
|
## Dithering
|
||||||
|
|
||||||
Work in progress...
|
Work in progress...
|
||||||
|
|
||||||
|
Une difficulté dans ce domaine, c'est la *floattitude* des pixels,
|
||||||
|
sur laquelle il est difficile d'appliquer des operations binaires,
|
||||||
|
comme le XOR.
|
||||||
|
@ -16,14 +16,14 @@ extern int verbosity;
|
|||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
static void print_struct_pam(struct pam *ppam, char *text)
|
static void print_struct_pam(struct pam *ppam, char *text)
|
||||||
{
|
{
|
||||||
printf(" text %s\n", text);
|
printf("\ttext %s\n", text);
|
||||||
printf(" size %d\n", ppam->size);
|
printf("\tsize %d\n", ppam->size);
|
||||||
|
|
||||||
printf(" format %d\n", ppam->format);
|
printf("\tformat %d 0x%04x\n", ppam->format, ppam->format);
|
||||||
printf(" plainformat %d\n", ppam->plainformat);
|
printf("\tplainformat %d\n", ppam->plainformat);
|
||||||
printf(" width & height %d %d\n", ppam->width, ppam->height);
|
printf("\twidth & height %d %d\n", ppam->width, ppam->height);
|
||||||
printf(" depth %d\n", ppam->depth);
|
printf("\tdepth %d\n", ppam->depth);
|
||||||
printf(" maxval %lu\n", ppam->maxval);
|
printf("\tmaxval %lu\n", ppam->maxval);
|
||||||
}
|
}
|
||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
|
|
||||||
@ -36,13 +36,14 @@ FILE *fp;
|
|||||||
fprintf(stderr, ">>> %s ( '%s' )\n", __func__, fname);
|
fprintf(stderr, ">>> %s ( '%s' )\n", __func__, fname);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
printf(" --- infos for '%s' ------------\n", fname);
|
||||||
|
|
||||||
if (NULL==(fp=fopen(fname, "r"))) {
|
if (NULL==(fp=fopen(fname, "r"))) {
|
||||||
perror(fname);
|
perror(fname);
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
pnm_readpaminit(fp, &inpam, sizeof(inpam));
|
pnm_readpaminit(fp, &inpam, sizeof(inpam));
|
||||||
|
|
||||||
print_struct_pam(&inpam, fname);
|
print_struct_pam(&inpam, fname);
|
||||||
|
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
@ -36,7 +36,7 @@ return 0;
|
|||||||
}
|
}
|
||||||
/* --------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------- */
|
||||||
/*
|
/*
|
||||||
* parameter fval is not used, why ?
|
* parameter fval is used for what ?
|
||||||
*/
|
*/
|
||||||
int fimg_killcolors_b(FloatImg *fimg, float fval)
|
int fimg_killcolors_b(FloatImg *fimg, float fval)
|
||||||
{
|
{
|
||||||
|
@ -103,4 +103,7 @@ for (foo=0; foo<size; foo++) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* -------------------------------------------------------------- */
|
/* -------------------------------------------------------------- */
|
||||||
|
/*
|
||||||
|
* ici, il manque le quaternize :)
|
||||||
|
*/
|
||||||
|
/* -------------------------------------------------------------- */
|
||||||
|
@ -69,8 +69,8 @@ fprintf(stderr, ">>> %s ( %p %p %f 0x%04x )\n", __func__,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (notused) {
|
if (notused) {
|
||||||
fprintf(stderr, "notused was %d, must be 0 in %s\n",
|
fprintf(stderr, "%s: notused was %d, must be 0\n",
|
||||||
notused, __func__);
|
__func__, notused);
|
||||||
}
|
}
|
||||||
|
|
||||||
halfval = fimg_get_maxvalue(src) / 2.0;
|
halfval = fimg_get_maxvalue(src) / 2.0;
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
|
* testbed for using the Netpbm library
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <pam.h>
|
|
||||||
|
#include <pam.h> /* Portable Any Map */
|
||||||
|
|
||||||
#include "../floatimg.h"
|
#include "../floatimg.h"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user