<div dir="ltr">Dominik,<br>you're right. The check on non-manifold edges is just to detect some cases that should not append.<br><font color="#888888">Marie-Gabrielle </font><br><br><div class="gmail_quote">2008/10/9 Dominik Szczerba <span dir="ltr"><<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>></span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">I think for a simple (non-self-intersecting etc.) mesh it is enough for<br>
closedness if there are no boundary edges. No non-manifold edges proves<br>
topological correctness or 'simplicity', but is not required for closedness.<br>
<br>
Dominik<br>
<div class="Ih2E3d"><br>
On Thursday 09 October 2008 08:19:32 pm Marie-Gabrielle Vallet wrote:<br>
> For a surface mesh, in the vtkFeatureEdges terminology :<br>
> - a boundary edge belongs to exactly one cell<br>
> - a manifold edge belongs to two cells<br>
> - a non-manifold edge belongs to 3 or more cells.<br>
> A simple close surface has only manifold edges.<br>
</div>> BoundaryEdgesOn()<br>
> NonManifoldEdgesOn()<br>
> ManifoldEdgesOff()<br>
> FeatureEdgesOff() </blockquote><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> > should return an empty set.<br>
<div><div></div><div class="Wj3C7c">><br>
> A simple open surface has boundary edges and may has manifold too.<br>
> Having non-manifold edges means the surface intersects itself. It could<br>
> still be close, but I guess you don't want to deal with...<br>
><br>
><br>
> 2008/10/9 Dominik Szczerba <<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>><br>
><br>
> > Hmmm. Is a boundary edge of an open surface a non-manifold edge? It does<br>
> > not<br>
> > seem so, at least with the default settings.<br>
> ><br>
> > Dominik<br>
> ><br>
> > On Friday 03 October 2008 07:14:51 pm Marie-Gabrielle Vallet wrote:<br>
> > > I think there is a easier way of checking the surface closeness. I mean<br>
> > > using vtk facilities, instead of writing a (yet another) new algorithm.<br>
> > ><br>
> > > VTK library has algorithms to extract a mesh boundary, i.e. the set of<br>
> > > faces (in 3D) or edges (in 2D) that are not shared by two cells. See<br>
> > > vtkFeatureEdges. The mesh is close if and only if this set is empty. If<br>
> ><br>
> > it<br>
> ><br>
> > > not, you can visualize the holes that must still be closed.<br>
> > ><br>
> > > Pamela is trying to do the same thing today. Have a look at the thread<br>
> ><br>
> > "get<br>
> ><br>
> > > boundary triangles from a mesh" on this mailing list.<br>
> > ><br>
> > > By the way, Charles, are you sure you are not re-inventing the wheel ?<br>
> > ><br>
> > > Marie-Gabrielle<br>
> > ><br>
> > > > Date: Fri, 3 Oct 2008 08:17:31 +0200<br>
> > > > From: Dominik Szczerba <<a href="mailto:dominik@itis.ethz.ch">dominik@itis.ethz.ch</a>><br>
> > > > Subject: Re: [vtkusers] Proving a surface mesh of closeness<br>
> > > > To: <a href="mailto:vtkusers@vtk.org">vtkusers@vtk.org</a><br>
> > > > Message-ID: <<a href="mailto:200810030817.31796.dominik@itis.ethz.ch">200810030817.31796.dominik@itis.ethz.ch</a>><br>
> > > > Content-Type: text/plain; charset="utf-8"<br>
> > > ><br>
> > > > If it is manifold then pick the 1st element and make sure each one<br>
> > > > it has<br>
> > ><br>
> > > the<br>
> > ><br>
> > > > proper number of neighbors (for triangles: 3). Mark the element as<br>
> > ><br>
> > > 'visited'<br>
> > ><br>
> > > > and visit all his neighbors, repeating the procedure. At the end, if<br>
> > ><br>
> > > number<br>
> > ><br>
> > > > of visited elements equals to number of elements in the mesh and all<br>
> > > > have their expected neighbors the mesh is closed.<br>
> > > ><br>
> > > > DS<br>
> > > ><br>
> > > > On Friday 03 October 2008 02:48:59 am Charles Monty Burns wrote:<br>
> > > > > Hello,<br>
> > > > ><br>
> > > > > I repaired a surface mesh and want to prove whether the mesh is<br>
> > > > > totally closed or not. Save is save ...<br>
> > > > ><br>
> > > > > How can I do this?<br>
> > > > ><br>
> > > > > Greetings<br>
> > > ><br>
> > > > --<br>
> > > > Dominik Szczerba, Ph.D.<br>
> > > > Computational Physics Group<br>
> > > > Foundation for Research on Information Technologies in Society<br>
> > > > <a href="http://www.itis.ethz.ch" target="_blank">http://www.itis.ethz.ch</a> <<a href="http://www.itis.ethz.ch/" target="_blank">http://www.itis.ethz.ch/</a>><br>
> ><br>
> > --<br>
> > Dominik Szczerba, Ph.D.<br>
> > Computational Physics Group<br>
> > Foundation for Research on Information Technologies in Society<br>
> > <a href="http://www.itis.ethz.ch" target="_blank">http://www.itis.ethz.ch</a><br>
<br>
<br>
<br>
</div></div>--<br>
<div><div></div><div class="Wj3C7c">Dominik Szczerba, Ph.D.<br>
Computational Physics Group<br>
Foundation for Research on Information Technologies in Society<br>
<a href="http://www.itis.ethz.ch" target="_blank">http://www.itis.ethz.ch</a><br>
</div></div></blockquote></div><br></div>