Я хотел бы реализовать плагин Maya (этот вопрос не зависит от Maya) для создания 3D-моделей Вороного, что-то вроде
Я просто знаю, что мне нужно начинать с точечной выборки (я реализовал алгоритм адаптивной пуассоновской выборки, описанный в этой статье ).
Я подумал, что из этих точек я должен создать 3D-проволочную сетку с применением Voronoi (я пытался использовать (Python) scipy.spatial.Voronoi, но результат оказался не таким, как я ожидал).
Я что-то упустил? Кто-нибудь может предложить правильный конвейер и алгоритмы, которые я должен реализовать для создания таких шаблонов?
[РЕДАКТИРОВАТЬ] Вот несколько примеров того, как я получаю обработку результата, который я получаю из scipy.spatial.Voronoi, как это (как предложено здесь ):
vor = Voronoi(points)
for vpair in vor.ridge_vertices:
for i in range(len(vpair) - 1):
if all(x >= 0 for x in vpair):
v0 = vor.vertices[vpair[i]]
v1 = vor.vertices[vpair[i+1]]
create_line(v0.tolist(), v1.tolist())
Серые вершины - это выбранные точки (исходная форма была простой сферой):
Ответы:
http://www.cs.sandia.gov/~samitch/papers/vor_final.pdf В любом языке программирования нет компьютерного алгоритма, но вы должны быть в состоянии легко воспроизвести его с помощью некоторых плоских отражений и алгоритмов из ссылка выше.
источник