Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   pintar de diferente color a una imagen (https://www.clubdelphi.com/foros/showthread.php?t=33457)

Chai 07-07-2006 02:48:23

pintar de diferente color a una imagen
 
hola a todos, deseo saber como puedo pintar las areas q forman mi imagen de diferentes colores.. yo le cargo a mi imagen con timagen.. pero no se como hacer q el usuario escoja un color y le pinte alguna area de un color:o

Neftali [Germán.Estévez] 07-07-2006 11:10:47

TImage posee un TCanvas y en el TCanvas puedes encontrar el método FloodFill, que te permite pintar un area de una imagen de un color; El área de la imagen debe ser de un único color o delimitada por un borde (creo recordar).
No te servirá, por ejemplo, para pintar sobre una foto.

Chai 25-07-2006 18:31:30

Relleno
 
hola Neftali, mira estuve utilizando floodfill, pero creo que estoy haciendo algo mal por que hago que se rellene la parte de afuera de la imagen, no se creo que estoy entiendo mal el funcionamiento de floodfill, me podria explicar mejor por favor... gracias

Neftali [Germán.Estévez] 25-07-2006 18:37:28

No se cómo lo está utilizando, tal vez si pones el código..., pero la ayuda está bastante clara:

fsSurface Fill all area that has the color indicated by the Color parameter. Stop when another color is encountered.
fsBorder Fill all area that does not have the color indicated by the Color parameter. Stop when Color is encountered.

Chai 10-08-2006 03:41:37

pintar de diferente color a una imagen
 
hola disculpeme que te vuelva a molestar.. al hacer click en el area donde quiero que se me pinte a veces se pinta ahi y otras veces se pinta en cualquier parte del dibujo... por fis ayudeme.. ahi te envio el codigo, indiqueme cual es el error
gracias
1.-Declaro las variables para la posicion donde quiero que pinte;
private
{ Private declarations }
XRaton, YRaton:integer;

2.- Pongo un image y en los eventos pongo lo siguiente:
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
XRaton:=X;
YRaton:=Y;
end;
3.- La posición XRaton y YRaton no me coje porque no me pinta donde esta ubicado el cursor
procedure TForm1.Image1Click(Sender: TObject);
begin
image1.canvas.brush.color:=clred;
image1.Canvas.FloodFill(XRaton,YRaton,clblack,fsborder);
end;

Neftali [Germán.Estévez] 10-08-2006 18:09:12

Código Delphi [-]
image1.canvas.brush.color:=clred;
image1.Canvas.FloodFill(XRaton,YRaton,clblack,fsborder);

A mi esto me funciona correctamente.
Me pinta de color rojo desde el punto marcado hasta que encuentra algo de color negro (en ese punto para de pintar).

Chai 27-10-2006 18:21:54

hola
 
:o hola

discupa por no haber escrito, problemillas q no me permitian, agradesco tu ayuda me sirvio y si encontre mi error el por que no se me pintaba la imagen..muchas gracias.. amiga:o

Lepe 27-10-2006 19:36:25

Cita:

Empezado por Chai
muchas gracias.. amiga

Neftali, ¿Cuando te has hecho la operación de cambio de sexo? :D :D

Neftali [Germán.Estévez] 30-10-2006 11:55:15

Cita:

Empezado por Lepe
Neftali, ¿Cuando te has hecho la operación de cambio de sexo? :D :D

Y lo peor no es eso,... ¡¡Es que me lo han hecho sin que yo me entere y no se nota nada, nada, nada!!!!! :D:D:D

Neftalí es un nombre de origen hebreo (en ningun sitio se dice que sea de niña) y que significa "el luchador, el que lucha, al que Dios ayuda en la lucha (para los más creyentes)" y que me viene (el apodo) de mis tiempos en la facultad. Lo sigo conservando, auqnue ya hece unos cuantos "añitos" de eso... ...o no tantos...;)


La franja horaria es GMT +2. Ahora son las 13:07:41.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi