lilington
Messages postés158Date d'inscriptionsamedi 31 janvier 2004StatutMembreDernière intervention12 mars 2009
-
13 mars 2005 à 13:02
lilington
Messages postés158Date d'inscriptionsamedi 31 janvier 2004StatutMembreDernière intervention12 mars 2009
-
14 mars 2005 à 17:42
salut
j'aimerai savoir s'il existe une fonction pour convertire 3 teintes de couleurs en index: j'utilise la fonction
SetPixel(Hwnd,int,int,index); mais cependant je n'ai pas d'index mais
un RVB comment trouver l'équivalence entre RVB et index Merci
ensuite j'ai un autre probleme c'est que le même programme qui marche
sous VC++6.0 m'affiche une erreur de LINK à cause de la fonctrion
PutPixel bizar hein:
[Linker error] undefined reference to `SetPixel@16'
lilington
Messages postés158Date d'inscriptionsamedi 31 janvier 2004StatutMembreDernière intervention12 mars 2009 14 mars 2005 à 02:05
e crois que tu ne m'a pas comprit:
la fonction setpixel prent un intex par example SetPixel(hDc,x,y,0x121452);
mais moi je n'ai pas une valeure de type 0x121452 mais j'ai plutot
R,V,B soit 3valeurs j'aimerai donc convertir ces 3valeurs de façon à
obtenir 1seul de type 0xRRVVBB par example
lilington
Messages postés158Date d'inscriptionsamedi 31 janvier 2004StatutMembreDernière intervention12 mars 2009 14 mars 2005 à 17:42
c'est cool mais j'ai essayé autre chose :
index=65536*b+256*v+r ;
ça marche et il m'affiche mon pcx avec les mêmes couleurs que dans
photoshop ce pendant je l'affiche pixel par pixel et ça craint je vois
l'image ce dessiner au ralenti
par un
for (x=xmin<xmax;x++)
for (y=xmin<ymax;y++)
{
index = (65536 )+ PCX[y*bpl+x+bpl*2]+256*PCX[y*bpl+x+bpl]+PCX[y*bpl+x];
SetPixel(,hDCx,y,index);
}
j'imagine que cette double boucle "for " acompagné de la fonction
SetPixel contribuent au ralentissement mais j'ai aucune idé de comment
faire.
je me demande s'il n'est pas possible d'afficher tout mon buffer d'un coup (c quand même un gros pointeur >100 K0) merciiiii