Existe um algoritmo computacionalmente razoável para gerar um conjunto de polígonos a partir de um conjunto de 2d pontos?


7

Existe um algoritmo conhecido / existente para pegar uma tela 2D coberta em pontos distribuídos arbitrariamente / aleatoriamente e dividi-la inteiramente em um conjunto de polígonos não sobrepostos? Um exemplo do tipo de resultado que estou procurando:insira a descrição da imagem aqui


11
É importante que o algoritmo comece com o conjunto de pontos ou está bom se conseguir o efeito de alguma outra maneira? (Não sei a resposta em nenhum dos casos, mas não há razão para limitar a resposta se o conjunto de pontos gerado aleatoriamente for apenas o começo de uma solução e não uma parte intrínseca do problema.)
David Richerby

2
Você não diz qual ponto geraria o diagrama acima. A resposta "Voronoi" da DW é ótima, a menos que você queira dizer que os vértices compartilhados foram os pontos definidos inicialmente.
Vynce

Respostas:


12

Você pode estar procurando um diagrama de Voronoi . Dado um conjuntoS de pontos, ele cria uma célula por ponto, onde a célula para o ponto p contém tudo o que está mais perto p do que em qualquer outro ponto S. Existem algoritmos para calcular um diagrama de Voronoi noO(nlgn) hora, onde n é o número de pontos no seu conjunto.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.