Skip to Content.
Sympa Menu

cgal-discuss - importing meshes given polyhedron_3 halfedge constraint

Subject: CGAL users discussion list

List archive

importing meshes given polyhedron_3 halfedge constraint


Chronological Thread 
  • From: "David Lariviere" <>
  • To: <>
  • Subject: importing meshes given polyhedron_3 halfedge constraint
  • Date: Tue, 18 Mar 2008 11:38:38 -0400

I have been working on a project using CGAL for decomposing polyhedra into a
set of convex hulls (~3D equivalent of 2D polygon partitioning already
implemented in CGAL).

I have spent the majority of the project trying to get meshes into CGAL as a
polyhedron_3.

What do other third-party users of CGAL use in order to import meshes in
other file formats into CGAL which do not follow the halfedge constraint
that common edges between two facets must have opposite orders of vertices
(if one facet has edge A-->B, then an adjacent facet must use B-->A.

I managed to find a converter
(http://people.scs.fsu.edu/~burkardt/cpp_src/ivcon/ivcon.html ) to integrate
into my program, in order to convert from many common formats (including
OBJ) to OFF.

Now, I am trying to develop a method of modifying the imported meshes to
eliminate (combine) redundant vertices, and any changes required to make it
CGAL friendly (satisfying oriented 2 manifold requirement).

The most relevant past messages to this list I could find are:
https://lists-sop.inria.fr/wws/arc/cgal-discuss/2007-07/msg00097.html
https://lists-sop.inria.fr/wws/arc/cgal-discuss/2007-06/msg00222.html

The second post suggests using a closed source (linux) executable tool
(ReMesh 1.2) for fixing the meshes. Any one know of an opensource equivalent
(or even a

Are there any recommendations for the best method of inputting (and
hopefully pre-processing/fixing) meshes that violate the unique
halfedge/oriented 2 manifold requirements? Related, can any one suggest some
examples or references of importing the more common 3D meshes in other
formats often seen in the 3D vision & graphics literature (Stanford bunny,
Statue of David, Armadillo, Dragon, etc) into CGAL?

As a round-about method of manually removing duplicate vertices, is it
possible to utilize the triangulated surface mesh simplification? In order
to use the mesh simplification, I was considering adding edges between
duplicate points, and then running the algorithm with fairly strict
termination conditions. Is this a viable option?

Lastly, what is the recommended method for locating vertices by their exact
points: hash map, kd tree/neighbor search?

Thank you for your time,

- David



  • importing meshes given polyhedron_3 halfedge constraint, David Lariviere, 03/18/2008

Archive powered by MHonArc 2.6.16.

Top of Page