lgoritmos de preenchimento de gráficos vetoriai

Estou trabalhando em um aplicativo de desenho simples e preciso de um algoritmo para fazer preenchimentos de inundaçõe
O fluxo de trabalho do usuário terá a seguinte aparência (semelhante ao Flash CS, apenas mais simples):

o usuário desenhaem linha ret linhas na área de trabalho. Eles são tratados como vetores e podem ser selecionados e movidos após serem desenhadouser seleciona a ferramenta de preenchimento e clica na área de desenho. Se a área estiver cercada por linhas em todas as direções, um preenchimento será aplicado à áre

se as linhas forem movidas após a aplicação do preenchimento, a área de preenchimento será alterada de acord

Alguém tem uma boa idéia, como implementar esse algoritmo? A tarefa principal é basicamente determinar os segmentos de linha ao redor de um ponto. (e armazenando essas informações de alguma forma, caso as linhas sejam movidas)

EDIT: uma imagem de explicação: (pode haver outras linhas na tela, que não importam para o algoritmo de preenchimento)

EDIT2: uma situação mais difícil:

EDIT3: Encontrei uma maneira de preencher polígonos com furoshttp: //alienryderflex.com/polygon_fill, agora a questão principal é: como encontro meus polígono

questionAnswers(3)

yourAnswerToTheQuestion