1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
H=Image2->Picture->Bitmap->Height;
W=Image2->Picture->Bitmap->Width;
int Bp,Ap1,Ap2,Ap4;
for (int i=1;i<=nombreitération; i++)
{
for(int x=1;x<W;x++)
for(int y=1;y<H;y++)
{
Bp=0;
Ap1=0;
Ap2=0;
Ap4=0;
if (Image2->Canvas->Pixels[x-1][y-1]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x-1][y]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x-1][y+1]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x][y+1]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x+1][y+1]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x+1][y]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x+1][y-1]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x][y-1]==clBlack)Bp=Bp+1;
if (Image2->Canvas->Pixels[x-1][y]==clWhite && Image2->Canvas->Pixels[x-1][y+1]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x-1][y+1]==clWhite && Image2->Canvas->Pixels[x][y+1]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x][y+1]==clWhite && Image2->Canvas->Pixels[x+1][y+1]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x+1][y+1]==clWhite && Image2->Canvas->Pixels[x+1][y]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x+1][y]==clWhite && Image2->Canvas->Pixels[x+1][y-1]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x+1][y-1]==clWhite && Image2->Canvas->Pixels[x][y-1]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x][y-1]==clWhite && Image2->Canvas->Pixels[x-1][y-1]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x-1][y-1]==clWhite && Image2->Canvas->Pixels[x-1][y]==clBlack)Ap1=Ap1+1;
if (Image2->Canvas->Pixels[x-2][y]==clWhite && Image2->Canvas->Pixels[x-2][y+1]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x-2][y+1]==clWhite && Image2->Canvas->Pixels[x-1][y+1]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x-1][y+1]==clWhite && Image2->Canvas->Pixels[x][y+1]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x][y+1]==clWhite && Image2->Canvas->Pixels[x][y]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x][y]==clWhite && Image2->Canvas->Pixels[x][y-1]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x][y-1]==clWhite && Image2->Canvas->Pixels[x-1][y-1]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x-1][y-1]==clWhite && Image2->Canvas->Pixels[x-2][y-1]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x-2][y-1]==clWhite && Image2->Canvas->Pixels[x-2][y]==clBlack)Ap2=Ap2+1;
if (Image2->Canvas->Pixels[x-1][y+1]==clWhite && Image2->Canvas->Pixels[x-1][y+2]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x-1][y+2]==clWhite && Image2->Canvas->Pixels[x][y+2]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x][y+2]==clWhite && Image2->Canvas->Pixels[x+1][y+2]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x+1][y+2]==clWhite && Image2->Canvas->Pixels[x+1][y+1]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x+1][y+1]==clWhite && Image2->Canvas->Pixels[x][y+1]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x][y+1]==clWhite && Image2->Canvas->Pixels[x][y]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x][y]==clWhite && Image2->Canvas->Pixels[x-1][y]==clBlack)Ap4=Ap4+1;
if (Image2->Canvas->Pixels[x-1][y]==clWhite && Image2->Canvas->Pixels[x-1][y+1]==clBlack)Ap4=Ap4+1;
if (Bp>=2 && Bp<=6 && Ap1==1)
{
if ((Image2->Canvas->Pixels[x-1][y]==clWhite && Image2->Canvas->Pixels[x][y+1]==clWhite && Image2->Canvas->Pixels[x][y-1]==clWhite)|| (Ap2==1) )
{
if ((Image2->Canvas->Pixels[x-1][y]==clWhite && Image2->Canvas->Pixels[x][y+1]==clWhite && Image2->Canvas->Pixels[x+1][y]==clWhite)|| (Ap4==1) )
{
Image2->Canvas->Pixels[x][y]=clWhite;
}
}
}
}
} |
Partager