Salut à tous :
J'ai quelques soucis conceptuels quant à l'enregistrement d'images. Cad : je modélise un objet 3D, et je dois avoir la possibilité soit d'afficher soit d'enregistrer un jpeg correspondant à ce qui aurait été affiché dans ma fenetre glut.
je dispose bien d'une fonction telle que :
/////////////////////////////////////////////////////
int
write_jpeg(FILE *outfile, int width, int height, unsigned char *rgb,
int quality)
{
struct jpeg_compress_struct cinfo;
struct jpeg_error_mgr jerr;
JSAMPROW scanline[1];
cinfo.err = jpeg_std_error(&jerr);
jpeg_create_compress(&cinfo);
jpeg_stdio_dest(&cinfo, outfile);
cinfo.image_width = width;
cinfo.image_height = height;
cinfo.input_components = 3;
cinfo.in_color_space = JCS_RGB;
jpeg_set_defaults(&cinfo);
jpeg_set_quality(&cinfo, quality, TRUE);
jpeg_start_compress(&cinfo, TRUE);
while (cinfo.next_scanline < (unsigned int) height)
{
scanline[0] = rgb + 3 * width * cinfo.next_scanline;
jpeg_write_scanlines(&cinfo, scanline, 1);
}
jpeg_finish_compress(&cinfo);
jpeg_destroy_compress(&cinfo);
return(1);
}
/////////////////////////////////////////////////////
Mais comment rempli-t-on le tableau d'unsigned char rgb ?
Comment avoir axès aux pixels affichés en fait ?
C'est sans doute facile, mais... bon ... c'est tout moi ça.
///////////////////////////////////////////////////
J'avais tjrs une question sans réponse sur le forum,
sur les moyens d'afficher du texte de couleur (autre que noir)
dans ma fenetre glut. L'utilisation de glutBitmapCharacter semble
limiter au noir, non ?
///////////////////////////////////////////////////
Excellent week end à tous,