Um algoritmo de pintura de interiores (hehe) é relativamente fácil de implementar, e até giro de ver funcionar, mesmo em formas não fechadas. Lembro-me que fazer o tal de medições deu-me um bom gozo e, embora simples, ao executar parece algo complexo e impressionou o patrão da altura. ;-) É apenas uma questão de pensar correctamente em preencher todos os píxeis de forma sistemática. Aliás, como podemos ver nos exemplos e tipos de flood fill. A questão é que é para raster. Claro que talvez se consiga dar a volta: converter a shape de vector em raster, executar o algoritmo e apagar o raster. Criar layer para cálculos de flood fill.
MV 2011/7/12 Ricardo Araújo <[email protected]> > se imaginarmos que o utilizador desenhou uma linha mais ou menos em forma > de uma circunferência ... (com algumas imperfeições porque até sofria > de Parkinson) ... não consigo imaginar como pintar o interior... > > possível é... porque o próprio flash ide faz isso :) desenhamos algo com > o lápis e se fecharmos o path podemos pintar. Até tem outra ferramenta que > permite pintar formas que não foram totalmente fechadas. Mas nesse caso o > que ele faz é unir os pontos e assim está fechado e pode pintar... > > agora, o difícil é desenhar uma forma idêntica ao que o utilizador > desenhou... depois é só dizer-lhe a cor! > > No dia 12 de Julho de 2011 16:17, Miguel Vaz <[email protected]>escreveu: > > Sim, para raster. Desconheço se nativamente existe algo para flood fill >> considerando vectores. Com alguma matemática ainda se faz alguma coisa, mas >> implica trabalho e, dependendo das formas, pode ser considerável - mas >> admito que era um desafio engraçado. :-) >> >> >> MV >> >> 2011/7/12 Ricardo Araújo <[email protected]> >> >>> Parece-me interessante! >>> Mas isto é para imagens raster correcto? Se fosse o caso do utilizador >>> desenhar algo vectorial com uma forma estranha, e depois queira aplicar uma >>> cor de preenchimento? >>> >>> No dia 12 de Julho de 2011 15:48, Miguel Vaz <[email protected]>escreveu: >>> >>> >>>> Há algum tempo fiz algo parecido mas era para fazer medições em >>>> fotografias de microscópio electrónico e na pesquisa que realizei encontrei >>>> vários algoritmos de preenchimento (flood fill). Alguns são mais simples do >>>> que outros. No meu caso específico implementei um de raiz, mas as áreas >>>> eram >>>> de formas relativamente simples. >>>> Começa por aqui: >>>> >>>> http://en.wikipedia.org/wiki/Flood_fill >>>> >>>> Vê o scanline fill. >>>> >>>> Na altura também passei por este: >>>> >>>> http://www.codeproject.com/KB/GDI/QuickFill.aspx >>>> >>>> Isto faz-me recordar os tempos do Commodore Amiga, com o Deluxe Paint, >>>> hehe. Nostalgias. :-) >>>> >>>> Espero que os links ajudem, Paulo. >>>> >>>> >>>> >>>> MV >>>> >>>> >>>> >>>> >>>> >>>> >>>> 2011/7/12 Paulo Lameira <[email protected]> >>>> >>>>> Olá a todos, >>>>> >>>>> estou a desenvolver um pequeno Paint em as3 e gostaria de adicionar à >>>>> aplicação a ferramenta de "Paint Bucket" que serve para preencher com cor, >>>>> espaços em branco. Visto estes espaços não serem um objecto gostaria que >>>>> me >>>>> aconcelhassem de que forma eu poderei desenvolver esta funcionalidade. >>>>> >>>>> Atenciosamente, >>>>> >>>>> -- >>>>> *Paulo Lameira* >>>>> *Hyperactive Designer* >>>>> *(+351) 962.855.462* >>>>> *@paulolameira <http://twitter.com/#!/paulolameira>* >>>>> >>>>> -- >>>>> Recebeu esta mensagem porque está inscrito no grupo "Mailing List da >>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" >>>>> dos Grupos do Google. >>>>> Para publicar uma mensagem neste grupo, envie um e-mail para >>>>> [email protected]. >>>>> Para anular a inscrição neste grupo, envie um e-mail para >>>>> [email protected]. >>>>> Para ver mais opções, visite este grupo em >>>>> http://groups.google.com/group/riapt?hl=pt-PT. >>>>> >>>> >>>> -- >>>> Recebeu esta mensagem porque está inscrito no grupo "Mailing List da >>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" >>>> dos Grupos do Google. >>>> Para publicar uma mensagem neste grupo, envie um e-mail para >>>> [email protected]. >>>> Para anular a inscrição neste grupo, envie um e-mail para >>>> [email protected]. >>>> Para ver mais opções, visite este grupo em >>>> http://groups.google.com/group/riapt?hl=pt-PT. >>>> >>> >>> -- >>> Recebeu esta mensagem porque está inscrito no grupo "Mailing List da >>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos >>> Grupos do Google. >>> Para publicar uma mensagem neste grupo, envie um e-mail para >>> [email protected]. >>> Para anular a inscrição neste grupo, envie um e-mail para >>> [email protected]. >>> Para ver mais opções, visite este grupo em >>> http://groups.google.com/group/riapt?hl=pt-PT. >>> >> >> -- >> Recebeu esta mensagem porque está inscrito no grupo "Mailing List da >> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos >> Grupos do Google. >> Para publicar uma mensagem neste grupo, envie um e-mail para >> [email protected]. >> Para anular a inscrição neste grupo, envie um e-mail para >> [email protected]. >> Para ver mais opções, visite este grupo em >> http://groups.google.com/group/riapt?hl=pt-PT. >> > > -- > Recebeu esta mensagem porque está inscrito no grupo "Mailing List da > Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos > Grupos do Google. > Para publicar uma mensagem neste grupo, envie um e-mail para > [email protected]. > Para anular a inscrição neste grupo, envie um e-mail para > [email protected]. > Para ver mais opções, visite este grupo em > http://groups.google.com/group/riapt?hl=pt-PT. > -- Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google. Para publicar uma mensagem neste grupo, envie um e-mail para [email protected]. Para anular a inscrição neste grupo, envie um e-mail para [email protected]. Para ver mais opções, visite este grupo em http://groups.google.com/group/riapt?hl=pt-PT.
