Il y a surement plusieurs façon de procéder. En voici deux. Je suppose que ton cercle est représenté par son centre et son rayon en pixel.
[LIST=1][*]Soit tu parcours tous tes pixels et tu calcules à chaque fois sa position par rapport au cercle.[*]Soit tu commences par trouver les pixels sur le contour du cercle, tu les initialises dans ta matrices à m[i][j]=0. Puis tu parcours tout tes pixels dans un l'ordre (de gauche à droite et de haut en bas par exemple) et tu regarde si le pixel courant est déjà initialisé à 0 dans ce cas tu incrémente un compteur de 1. Tous les pixels situés sur la même ligne seront des m[i][j]==-1 jusqu'à ce que ton compteur passe à 2.
Je te passes les détails de ré-initialisation du compteur et des cas au bord de l'image.
Inutile de dire que niveau perfs la deuxième méthode est largement meilleur que la première.
Bon courage
Partager