 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Argone Lt


Registrado: 23 Jun 2003Mensajes: 97Ubicación: Las Palmas.. España
|
Publicado: Lun 03 Nov, 2003 10:30 pm Asunto: Rellenar TImage |
|
|
Hola a tod@s,
Mi pregunta es la siguiente. Existe dentro de TImage algun evento que relleno?. Me explique tengo un contorno el cual pinto dentro de un TImage mediante el Canvas
| Código: |
int Contornox[y][x];
int Contornoy[y][x];
/*Contorno tiene las coordenadas del canvas donde tiene que ir pintando
con esto voy dibujando el contorno*/
for (int i=0;i<y;i++)
for (int j=0;j<x;j++)
Image1->Canvas->Pixels[Contornox[j][i],Contornoy[j][i]] =RGB(253,253,253);
//Esto solo me pinta las lineas...por ejemplo forma una figura cerrada como puede rellenar?
|
bueno espero haberme explicado..alguna idea?
Argone |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Lun 03 Nov, 2003 11:42 pm Asunto: |
|
|
¿ Lo que necesitas es rellenar figuras cerradas ? Si es así puedes usar el método "FloodFill" de TCanvas. Por ejemplo:
| Código: | TCanvas* canvas = Image1->Canvas;
// Dibujamos un circulo sin relleno como ejemplo
canvas->Pen->Color = clBlack;
canvas->Ellipse(10, 10, 90, 90);
// Rellenamos el interior de la figura cerrada
// hasta los limites del borde de color especificado
canvas->Brush->Color = clLime; // Color de relleno
canvas->FloodFill(40, 40, clBlack /*color del borde*/, fsBorder); |
Por si te sirve, también puedes crear polígonos rellenos especificando sus vértices. Por ejemplo:
| Código: | TCanvas* canvas = Image1->Canvas;
// Vertices del poligono
TPoint pt[12] =
{
Point(30, 0), Point(20, 20), Point( 0, 20),
Point(10, 40), Point( 0, 60), Point(20, 60),
Point(30, 80), Point(40, 60), Point(60, 60),
Point(50, 40), Point(60, 20), Point(40, 20)
};
canvas->Brush->Color = clYellow; // Color de relleno
canvas->Pen->Color = clBlue; // Color del borde
canvas->Pen->Width = 2; // Grosor del borde
// ...
canvas->Polygon(pt, 11); // Dibujamos el poligono |
|
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|