Ver Mensaje Individual
  #35  
Antiguo 28-08-2008
Cesar Junior Cesar Junior is offline
Miembro
 
Registrado: ago 2007
Posts: 24
Reputación: 0
Cesar Junior Va por buen camino
Cita:
Empezado por coso Ver Mensaje
Hola de nuevo Cesar Junior,


Código Delphi [-]
colonias := 0;
for i := 0 to Image1.Width do
for j := 0 to Image1.Height do
if Image1.Canvas.Pixels[i,j] = clWhite then
begin
tam := 0;
rellena_colonia(i,j,clWhite,clRed,Image1,tam);
ShowMessage(inttostr(tam)); // tamaño de colonia
inc(colonias);
end;
Label1.Caption := inttostr(colonias);
end;

procedure TForm1.Rellena_colonia(i,j : integer; col,rel : TColor; im : TImage; var tam : integer);
begin
if (i = 0) or (j = 0) or (i > Im.Width) or (i > Im.Height) then exit;
if Im.Canvas.Pixels[i,j] <> col then exit;
Im.Canvas.Pixels[i,j] := rel;
inc(tam);

rellena_colonia(i-1,j-1,col,rel,im,tam);
rellena_colonia(i ,j-1,col,rel,im,tam);
rellena_colonia(i+1,j-1,col,rel,im,tam);
rellena_colonia(i-1,j ,col,rel,im,tam);
rellena_colonia(i ,j ,col,rel,im,tam);
rellena_colonia(i+1,j ,col,rel,im,tam);
rellena_colonia(i-1,j+1,col,rel,im,tam);
rellena_colonia(i ,j+1,col,rel,im,tam);
rellena_colonia(i+1,j+1,col,rel,im,tam);
end;




te ira contando los tamaños

Sensacional! esto funciona de maravilha!!! ahora voia definir cuales son los intereses para la contage, felicitaciones!!! se nota que para ti es de una simplicidad, cuando ya para mi parecia un monstro de 7 cabezas, asi q tenga los resultados posto aqui para mostrarles, des de ya gracias a todos con las ideas el tiepo tomado, a Coso, [DELPHIUS], seoane!!!
Responder Con Cita