Added tutorial on deleting geometry
git-svn-id: http://www.openmesh.org/svnrepo/OpenMesh/trunk@156 fdac6126-5c0c-442c-9429-916003d36597
This commit is contained in:
39
Doc/tutorial_07b.docu
Normal file
39
Doc/tutorial_07b.docu
Normal file
@@ -0,0 +1,39 @@
|
||||
/** \page tutorial_07b Deleting geometry elements
|
||||
|
||||
This small example shows how to remove faces and vertices from a mesh.
|
||||
|
||||
We basically use the geometry created in \ref tutorial_01.
|
||||
|
||||
If we want our mesh class to be able to remove vertices, faces or (half-) edges
|
||||
we have to extend the default traits for our mesh class.
|
||||
Vertices, faces and (half-)edges need the OpenMesh::Attributes::Status attribute
|
||||
which is used to hold the flag "deleted" if an element is deleted.
|
||||
|
||||
The struct which defines the mesh traits then looks like this:
|
||||
|
||||
\dontinclude delete_geometry.cc
|
||||
\skipline struct
|
||||
\until };
|
||||
|
||||
After having created the geometry of the cube one can delete faces and vertices
|
||||
by simply calling delete_vertices() (delete_faces() or delete_edges() respectiely).
|
||||
|
||||
In this example we delete all faces excpet one and the corresponding vertices.
|
||||
The code looks like this
|
||||
|
||||
\dontinclude delete_geometry.cc
|
||||
\skipline // Delete face 0
|
||||
\until mesh.delete_vertex(vhandle[3], false);
|
||||
|
||||
Now the deleted faces and vertices are marked as "deleted" internally.
|
||||
Call garbage_collection() to definitely remove them from memory.
|
||||
|
||||
\dontinclude delete_geometry.cc
|
||||
\skipline // Delete all
|
||||
\until mesh.garbage_collection();
|
||||
|
||||
The full source code of the example:
|
||||
|
||||
\include delete_geometry.cc
|
||||
|
||||
**/
|
||||
Reference in New Issue
Block a user