Me gustaría implementar un complemento Maya (esta pregunta es independiente de Maya) para crear patrones 3D Voronoi, algo así como
Solo sé que tengo que comenzar desde el muestreo puntual (implementé el algoritmo de muestreo adaptativo de Poisson descrito en este documento ).
Pensé que, a partir de esos puntos, debería crear el cable 3D de la malla aplicando Voronoi (intenté usar (Python) scipy.spatial.Voronoi pero el resultado fue algo diferente de lo que esperaba).
Me estoy perdiendo algo? ¿Alguien puede sugerir la tubería y los algoritmos adecuados que debo implementar para crear tales patrones?
[EDITAR] Aquí hay algunos ejemplos de lo que obtengo manejando el resultado que obtengo de scipy.spatial.Voronoi como este (como se sugiere aquí ):
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())
Los vértices grises son los puntos muestreados (la forma original era una esfera simple):
Respuestas:
http://www.cs.sandia.gov/~samitch/papers/vor_final.pdf No existe el algoritmo informático en ningún lenguaje de programación, pero debería poder replicarlo fácilmente con algunas reflexiones planas y los algoritmos del enlace de arriba.
fuente