2008-10-08 12 views
5

Tengo un montón de posiciones de vértices 3D & necesito generar un casco convexo que las contenga; ¿Alguien sabe de cualquier enlace QHull para .NET? o algoritmos de triangulación 3D Delaunay nativos?Generación de casco convexo en .NET

Respuesta

1

Una 3D delauney es complicada, no estoy seguro de que sea posible definir estrictamente una restricción delaUNE para una superficie 3D.
La técnica normal si solo quieres enmazar una superficie es elegir una dirección y asignarla a 2 coordenadas y hacer una 2d delauney. Para un mapa de altura, es fácil simplemente usar x, y. Luego, cuando tenga los nodos formando cada triángulo, puede usar sus coordenadas 3d.

El mejor código 2D es probablemente http://www.cs.cmu.edu/~quake/triangle.html
Esto también le dará la envolvente convexa

+0

Esto funciona muy bien - hasta que se pulsa el problema del punto colineal que tiene Delaunay :( Pero para algo así como un mapa de elevación (o un sólido muy irregular), esta técnica sería ideal. – moobaa

0

un vistazo a this site que tarda aproximadamente hallazgo punto 2D y 3D en formas.

0

Dado que este es el principal éxito de google para "generación de casco convexo", quiero apuntar a los lectores hacia el código de generación de casco de Stan Melax. Ha sido empaquetado por John Ratcliff como "stanhull". Es más fácil trabajar con QHull.

Editar: Una link to stanhull

Cuestiones relacionadas