toufleboss
Messages postés2Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention20 novembre 2003
-
19 nov. 2003 à 21:42
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
20 nov. 2003 à 09:46
Ci joint un algo de détourage d'un bmp de qq lignes :
Le Binze c'est que des que la zone a détourée est trop importante je me tape un Stack overflow (le nb de fonction récursive empilé est trop important).
Cependant j'ai augmenté la taille de la pile à 1Go est à l'execution le programme plante (sur de grosses zones) alors que la mémoire utilisée est de 9-10 Mo.
Comprend pas.
void CPicture::Def4Connexes(unsigned long offset_pixel,const int & largeur,const int & hauteur)
{
BufferDetour[offset_pixel] = 1;
int y = offset_pixel/largeur;
int x = offset_pixel%largeur;
long off = offset_pixel;
//int nb_voisins = 0;
float seuil = 0.8;
for(int i=0;i<4;i++)
{
switch(i){
case 0:
off = offset_pixel + 1;//droit
break;
case 1:
off = offset_pixel + largeur;//bas
break;
case 2:
off = offset_pixel -1;//gauche
break;
case 3:
off = offset_pixel - largeur;//haut
break;
}
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 19 nov. 2003 à 23:48
Vire la recurrence et reecris cela en iteratif. Quand bien meme tu pourrais avoir une stack de 1 tera serait bien trop long d'empiler tous ces param a chaque tour et de depiler ensuite.
BruNews, ciao...