2017-02-06 7 views
1

Je suis un débutant pour la bibliothèque CGAL. Cependant, je pense que c'est un paquet très approprié pour ce que je veux faire. J'ai un ensemble de points représentant une surface 3D (comme le montre la figure 1). figure 1 Je veux ajuster une triangulation 3D sur cette surface. La surface n'est pas fermée et n'occupe donc pas de volume. Le code fourni dans poisson_reconstruction_example.cpp semble approprié pour ce travail. Mais le problème est que dans le cadre de l'algorithme poisson_reconstruction, il ferme les extrémités et en dessous de la surface pour en faire un volume (voir figure 2). Je me demandais:Triangulation de surface 3D d'une surface ouverte avec CGAL

1- s'il y a un moyen de faire la triangulation sur la surface juste définie par les points? Ce qui signifie que la triangulation finale a des bords limites. Je suis satisfait de tout suréchantillonnage ou de tout lissage qui pourrait être nécessaire.

2- Si la réponse à la première question est non, est-il possible de garantir que les points d'entrée sont les sommets des triangles générés?

Répondre

1

La reconstruction de la surface du poisson génère une surface proche qui interpole le nuage de points donné en entrée. Il nécessite en entrée un ensemble de points avec des normales.

Si vous avez besoin d'un algorithme qui utilise uniquement des points d'entrée dans la sortie, vous pouvez essayer l'algorithme Advancing Front Surface Reconstruction.