[vtkusers] Proving a surface mesh of closeness

Marie-Gabrielle Vallet mgv.research at gmail.com
Thu Oct 9 14:19:32 EDT 2008


For a surface mesh, in the vtkFeatureEdges terminology :
 - a boundary edge belongs to exactly one cell
 - a manifold edge belongs to two cells
 - a non-manifold edge belongs to 3 or more cells.
A simple close surface has only manifold edges.
BoundaryEdgesOn<http://www.vtk.org/doc/nightly/html/classvtkFeatureEdges.html#d1db4f83238d8c67e1947d49b9cde809>()
NonManifoldEdgesOn<http://www.vtk.org/doc/nightly/html/classvtkFeatureEdges.html#f500d450d2858feff66bf6d8ea445789>()
ManifoldEdgesOff<http://www.vtk.org/doc/nightly/html/classvtkFeatureEdges.html#39683205bb877df465d166029307cbb8>()
FeatureEdgesOff<http://www.vtk.org/doc/nightly/html/classvtkFeatureEdges.html#bbe4158f8c4a8a29131e7e32637f563d>()
should return an empty set.

A simple open surface has boundary edges and may has manifold too.
Having non-manifold edges means the surface intersects itself. It could
still be close, but I guess you don't want to deal with...


2008/10/9 Dominik Szczerba <dominik at itis.ethz.ch>

> Hmmm. Is a boundary edge of an open surface a non-manifold edge? It does
> not
> seem so, at least with the default settings.
>
> Dominik
>
> On Friday 03 October 2008 07:14:51 pm Marie-Gabrielle Vallet wrote:
> > I think there is a easier way of checking the surface closeness. I mean
> > using vtk facilities, instead of writing a (yet another) new algorithm.
> >
> > VTK library has algorithms to extract a mesh boundary, i.e. the set of
> > faces (in 3D) or edges (in 2D) that are not shared by two cells. See
> > vtkFeatureEdges. The mesh is close if and only if this set is empty. If
> it
> > not, you can visualize the holes that must still be closed.
> >
> > Pamela is trying to do the same thing today. Have a look at the thread
> "get
> > boundary triangles from a mesh" on this mailing list.
> >
> > By the way, Charles, are you sure you are not re-inventing the wheel ?
> >
> > Marie-Gabrielle
> >
> > >  Date: Fri, 3 Oct 2008 08:17:31 +0200
> > >  From: Dominik Szczerba <dominik at itis.ethz.ch>
> > >  Subject: Re: [vtkusers] Proving a surface mesh of closeness
> > >  To: vtkusers at vtk.org
> > >  Message-ID: <200810030817.31796.dominik at itis.ethz.ch>
> > >  Content-Type: text/plain;  charset="utf-8"
> > >
> > >  If it is manifold then pick the 1st element and make sure each one it
> > > has
> >
> > the
> >
> > >  proper number of neighbors (for triangles: 3). Mark the element as
> >
> > 'visited'
> >
> > >  and visit all his neighbors, repeating the procedure. At the end, if
> >
> > number
> >
> > >  of visited elements equals to number of elements in the mesh and all
> > > have their expected neighbors the mesh is closed.
> > >
> > >  DS
> > >
> > >  On Friday 03 October 2008 02:48:59 am Charles Monty Burns wrote:
> > >  > Hello,
> > >  >
> > >  > I repaired a surface mesh and want to prove whether the mesh is
> > >  > totally closed or not. Save is save ...
> > >  >
> > >  > How can I do this?
> > >  >
> > >  > Greetings
> > >
> > >  --
> > >  Dominik Szczerba, Ph.D.
> > >  Computational Physics Group
> > >  Foundation for Research on Information Technologies in Society
> > >  http://www.itis.ethz.ch <http://www.itis.ethz.ch/>
>
>
>
> --
> Dominik Szczerba, Ph.D.
> Computational Physics Group
> Foundation for Research on Information Technologies in Society
> http://www.itis.ethz.ch
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20081009/54a8168b/attachment.htm>


More information about the vtkusers mailing list