Issuu on Google+

UNIVERSIDAD TECNICA DE AMBATO Facultad de Ciencias Humanas y la Educación Carrera de Docencia en Informática Tercer Semestre “A” Integrantes: Diego Chicaiza Diego Jurado

Que es el floodfill o llamado relleno.

Rellenar, también llamado relleno de semillas, es un algoritmo que determina el área conectada a un nodo dado en una matriz multidimensional. Se utiliza en el "cubo" herramienta de relleno de los programas de pintura para determinar qué partes de un mapa de bits para rellenar con color, y en los juegos como Go y Buscaminas para determinar qué piezas se han borrado. Cuando se aplica sobre una imagen para rellenar una zona determinada limitada con el color, también se le conoce como relleno de frontera.

El algoritmo

El algoritmo de llenar las inundaciones toma tres parámetros: un nodo de inicio, de un color blanco, y un color de sustitución. El


algoritmo busca todos los nodos en el sistema que está conectado al nodo de comenzar un camino de color de destino y los cambios que el color de sustitución. Hay muchas maneras en que puede ser la inundación de relleno algoritmo estructurado, pero todos ellos hacen uso de una estructura de cola o pila de datos, explícita o implícitamente. Una implícitamente basado en la pila (recursivo) las inundaciones llenar la aplicación (por una matriz de dos dimensiones)

Para qué sirve la función floodfill

Rellenar la función se usa para rellenar un área cerrada. Patrón de relleno actual y el color de relleno se utiliza para rellenar el área. (X, y) es cualquier punto en la pantalla si (x, y) se encuentra dentro de la zona, entonces en el interior se llenará de otra manera fuera va a ser llenado, en la frontera especifica el color de límite de la zona. Para cambiar el patrón de llenado y llene setfillstyle uso del color. Código a continuación dibuja un círculo y luego llena.


En el programa anterior se dibuja un círculo en color rojo. Punto (100,100) se encuentra dentro del círculo, ya que es el centro del círculo, el tercer argumento para Rellenar es roja, que es el color del borde del círculo. Así que la salida del anterior programa es un círculo lleno de color blanco, ya que es el color de relleno predeterminado.


void far floodfill(int x, int y, int borde);

EJEMPLO: SORPRESITA #include <graphics.h> #include <conio.h> #include <stdio.h> int main() { int gdriver = EGA; int gmodo = EGAHI; int trama, color; int puntos[8] = { 300, 50, 500, 300, 100, 300, 300, 50 }; /* Si has registrado los dispositivos para que formen parte de graphics.lib ** entonces usa estas sentencias: registerbgidriver( EGAVGA_driver ); initgraph( &gdriver, &gmodo, "" ); */ /* Si no, entonces has de "decir" d&oacute;nde se encuentra el dispositivo gr&aacute;fico */ initgraph( &gdriver, &gmodo, "C:\\BC5\\BGI" ); setcolor( 10 ); drawpoly( 4, puntos ); trama = SLASH_FILL; color = 4; setfillstyle( trama, color ); floodfill( 400, 250, 10 ); getch(); closegraph();

/* Pausa */


return 0; }


FLOODFILL