begin process at 2012 05 30 16:07:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Redimensionner un tableau


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Redimensionner un tableau

jeudi 2 septembre 2004 à 16:35:55 | Redimensionner un tableau

gilimcce

Je dois plaquer une texture sur un corps quelconque, sous OpenGL.
Je dispose d'une image jpeg de 1440*720 ou tout format quelconque.
OpenGL nécessite une texture dont les dimensions sont des puissance de 2.
Comment passer du tableau 3D [720][1440][3] à [512][1024][3] par exemple ?

Un petit indice...
Sous IDL il s'agit de la fonction "CONGRID".
Personnellement, ça ne m'a pas vraiment aidé, mais...

Merci pour tout.
jeudi 2 septembre 2004 à 16:53:59 | Re : Redimensionner un tableau

djl

Réponse acceptée !
t'embete pas, passe le tableau à glBuild2DMipmaps qui redimensionne automatiquement
jeudi 2 septembre 2004 à 18:05:45 | Suite...

gilimcce

//////////////////////// Notes \\\\\\\\\\\\\\\\\\\\\\\

Le corps est effectivement mappé, mais de manière imparfaite :
L'image semble déformée, striée...
je te livre partie du code, au cas où tu puisses y voir qq chose.
merci sans fin.

//////////////////////// Main \\\\\\\\\\\\\\\\\\\\\\\\\\

[...]
loadJpegImage(file);
[...]
/* Parametrage du placage de textures */
glPixelStorei(GL_UNPACK_ALIGNMENT,1);
gluBuild2DMipmaps(GL_TEXTURE_2D,3,1024,512,GL_RGB,GL_UNSIGNED_BYTE,texture);

//glTexImage2D est en commentaire puisque géré par gluBuild2DMipmaps
//glTexImage2D(GL_TEXTURE_2D,0,3,512,1024,0,GL_RGB,GL_UNSIGNED_BYTE,texture);

glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP);
glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP);

////////////// loadJpegImage \\\\\\\\\\\\\\\\\\\\\

[...]
jpeg_start_decompress(&cinfo);
ligne=image;
while (cinfo.output_scanline<cinfo.output_height)
{
ligne=image+3*1440*cinfo.output_scanline;
jpeg_read_scanlines(&cinfo,&ligne,1);
}

jpeg_finish_decompress(&cinfo);
jpeg_destroy_decompress(&cinfo);

// rearangement de l'image scannee dans le tableau de texture 3D

for (i=0;i<720;i++)
for (j=0;j<1440;j++)
{
texture[i][j][0]=image[i*1440*3+j*3];
texture[i][j][1]=image[i*1440*3+j*3+1];
texture[i][j][2]=image[i*1440*3+j*3+2];
}
jeudi 2 septembre 2004 à 21:53:12 | Re : Redimensionner un tableau

djl

pourquoi tu mets pas

gluBuild2DMipmaps(GL_TEXTURE_2D,3,1440,720,GL_RGB,GL_UNSIGNED_BYTE,texture);

?


tu voudraisqu'il soit redimensionner de quel maniere ton tableau ? (parce que gluBuild2DMipmaps fait ce qu'il a a faire)
vendredi 3 septembre 2004 à 12:08:13 | Re : Redimensionner un tableau

gilimcce

Alors en effet, ça marche, mais pas pour toute mes images :

Le mappage n'est plus déformé, mais :

phobos n'est mappé qu'au tiers (le reste est noir)
deimos est tout noir
Vénus est mappé totalement, et c'est joli.

Pourtant je suis tjrs dans le cas d'une image 1440*720
et la seule différence avec le code ci-dessus est la modif que tu m'as donnée.

Verrais-tu qq chose ?

Merci encore,
vendredi 3 septembre 2004 à 14:22:37 | Re : Redimensionner un tableau

djl

ben non desolé, je voit pas comment le comportement peut etre diffrenet d'une image à l'autre et de meme dimension

tu es sur du chargement de l'image en jpeg ?


Cette discussion est classée dans : tableau, opengl, redimensionner, quelconque, texture


Répondre à ce message

Sujets en rapport avec ce message

Redimensionner un tableau dynamique [ par BenHur ] Bonjour, j'aimerais savoir s'il existe une fonction en C++ pour redimensionner un tableau dynamiquement. Au même titre que REDIM en VB. Merci texture opengl [ par lapal ] salutje dois texturer une partie d' un fond marin(celui-ci etant affiche avec pleins de petits triangles). je n'arrive pas a texturer seulement une p problème de texture opengl [ par kidpigeyre ] J'ai beau regardé je ne trouve pourquoi l'affichage de ma texture ne marche pas, Pouvez-vous m'aider?J'ai commenté au max mon projet pour qu'il soit c lire la couleur d'un point d'une texture opengl [ par kawito ] Bonjour,j'ai crée des texture opengl a partir de fichier TGA.une fois les textures crées comment puis je reccuperer les information d'un pixel de la t Couleur et texture en opengl [ par smoove5198 ] bonjour, je suis un peu newbie en opengl et je n'ai toujours pas bien compris comment faire pour colorer les objets qu'on affiche sans que cela influ [Opengl] Texture disparait [ par goutbouyo ] Salut,Lorsque je m'éloigne trop d'un mur que j'ai créée il disparait.Vous me direz que c'est normal, mais là en fait je suis pas beaucoup éloigné qua [OpenGL]Ajuster texture à l'objet [ par goutbouyo ] Salut,Je prend un texture MUR.BMPLorsque je la "colle" sur un rectangle de 50*50 ça va.Mais si je la colle sur un rectangle de 10*50 elle est toute dé Besoin d'Aide en C++/OpenGL pour RTS 3D [ par ionstorm356 ] Bonjour tout le monde, je cherche des programmeurs en C++ (API Windows sans MFC) et OpenGL, motiver pour participer à un VRAI projet de Real Time Stra texture opengl [ par Alesx ] Salut à tous !Voilà, je me suis mis en tête de faire un pitit projet qui de modéliser le système solaire en opengl.La création des planètes (ie sphère comment redimensionner un tableau en c++ [ par bidules ] Salut,je suis debutant en C++ et je ne sais pas comment on fait pour redimensionner un tableau alors si qqun peut m'aider?Merci.


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,312 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales