Bueno espero poder ayudarte...
Canvas->FloodFill(51,25,clRed,fsBorder);
Esa función tiene 4 parámetros, los dos primeros se refiere a las coordenadas a partir de las cuales el canvas empezará a rellenar, clRed pues obvio es el color
y aqui viene lo importante el último parámetro solo puede tener 2 valores:
fsBorder --> Esta hace que se vaya coloreando el área que NO tiene el color indicado, y para cuando lo encuentra.
fsSourface --> Esta hace que se vaya coloreando el área que tiene el color que le indicaste a la función, y para cuando ya no encuentra ese color.
Con el ejemplo que pusiste de tu triángulo...
Código:
Canvas->Pen->Color=clRed; //Utilicé de ejemplo el color rojo
Canvas->Brush->Color=clRed;
Canvas->MoveTo(50,25);
Canvas->LineTo(80,5);
Canvas->LineTo(12,90);
Canvas->LineTo(50,25);
Canvas->FloodFill(51,25,clRed,fsBorder);
Si te fijas en la función FloodFill utilicé un punto más en las coordenadas de la que pusiste inicialmente y fsBorder, bueno el chiste es que según para lo que sirve fsBorder, di a entender que se vaya llenando todo lo que no sea rojo y que para cuando encuentre este color... comienzo uno adelante porque el punto (50,25) ya es rojo y pararía el proceso, en cambio el (51,25) aún es gris, espero haberme dado a entender, de todas maneras checa el código y a lo mejor así le entiendas, suerte! ^_^