added a few security assert on deletion of simplexes that you are actually deleting objects that belongs to the given mesh
This commit is contained in:
parent
e3d0a6d0cb
commit
b43fffd46f
|
@ -544,6 +544,7 @@ namespace vcg {
|
||||||
*/
|
*/
|
||||||
static void DeleteFace(MeshType &m, FaceType &f)
|
static void DeleteFace(MeshType &m, FaceType &f)
|
||||||
{
|
{
|
||||||
|
assert(&f >= &m.face.front() && &f <= &m.face.back());
|
||||||
assert(!f.IsD());
|
assert(!f.IsD());
|
||||||
f.SetD();
|
f.SetD();
|
||||||
--m.fn;
|
--m.fn;
|
||||||
|
@ -554,6 +555,7 @@ namespace vcg {
|
||||||
*/
|
*/
|
||||||
static void DeleteVertex(MeshType &m, VertexType &v)
|
static void DeleteVertex(MeshType &m, VertexType &v)
|
||||||
{
|
{
|
||||||
|
assert(&v >= &m.vert.front() && &v <= &m.vert.back());
|
||||||
assert(!v.IsD());
|
assert(!v.IsD());
|
||||||
v.SetD();
|
v.SetD();
|
||||||
--m.vn;
|
--m.vn;
|
||||||
|
@ -562,11 +564,12 @@ namespace vcg {
|
||||||
/** Function to delete an edge from the mesh.
|
/** Function to delete an edge from the mesh.
|
||||||
NOTE: THIS FUNCTION ALSO UPDATE en
|
NOTE: THIS FUNCTION ALSO UPDATE en
|
||||||
*/
|
*/
|
||||||
static void DeleteEdge(MeshType &m, EdgeType &e)
|
static void DeleteEdge(MeshType &m, EdgeType &e)
|
||||||
{
|
{
|
||||||
assert(!e.IsD());
|
assert(&e >= &m.edge.front() && &e <= &m.edge.back());
|
||||||
e.SetD();
|
assert(!e.IsD());
|
||||||
--m.en;
|
e.SetD();
|
||||||
|
--m.en;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Function to delete a hedge from the mesh.
|
/** Function to delete a hedge from the mesh.
|
||||||
|
|
Loading…
Reference in New Issue