[MOAB-dev] r4799 - in MOAB/trunk/src: . moab
iulian at mcs.anl.gov
iulian at mcs.anl.gov
Thu May 5 02:28:14 CDT 2011
Author: iulian
Date: 2011-05-05 02:28:09 -0500 (Thu, 05 May 2011)
New Revision: 4799
Modified:
MOAB/trunk/src/FBEngine.cpp
MOAB/trunk/src/GeomTopoTool.cpp
MOAB/trunk/src/moab/FBEngine.hpp
MOAB/trunk/src/moab/GeomTopoTool.hpp
Log:
fix bugs in splitting across
redistribute boundary edges according to adjacent triangles
correct child-parent relations for split edges and vertices
add some methods in gtt to retrieve global id for gsets
set the obb inside gtt to clean up obb sets
Modified: MOAB/trunk/src/FBEngine.cpp
===================================================================
--- MOAB/trunk/src/FBEngine.cpp 2011-05-03 17:44:21 UTC (rev 4798)
+++ MOAB/trunk/src/FBEngine.cpp 2011-05-05 07:28:09 UTC (rev 4799)
@@ -1317,7 +1317,7 @@
// we will separate triangles to delete, unaffected, new_triangles,
// nodesAlongPolyline,
Range first, second;
- rval = separate (iniTris, triToDelete, new_triangles, new_geo_edge,
+ rval = separate (face, triToDelete, new_triangles, new_geo_edge,
first, second);
// now, we are done with the computations;
@@ -1412,9 +1412,10 @@
}
MBERRORR(rval, "can't add proper set to the original set");
- if (debug_splits)
+ if (!loop)
{
- _mbImpl->write_file("firstFace.vtk", "vtk", 0, &newFace, 1);
+ rval = redistribute_boundary_edges_to_faces(face, newFace, new_geo_edge);
+ MBERRORR(rval, "fail to reset the proper boundary faces");
}
if (_smooth)
@@ -1431,6 +1432,11 @@
rval=_mbImpl->delete_entities(edgesToDelete);
MBERRORR(rval, "can't delete edges");
+ if (debug_splits)
+ {
+ _mbImpl->write_file("newFace.vtk", "vtk", 0, &newFace, 1);
+ _mbImpl->write_file("leftoverFace.vtk", "vtk", 0, &face, 1);
+ }
return MB_SUCCESS;
}
@@ -1475,7 +1481,7 @@
return MB_SUCCESS;
}
// so, triangles are
-ErrorCode FBEngine::separate (Range & iniTriangles, Range & triToDelete,
+ErrorCode FBEngine::separate (EntityHandle face, Range & triToDelete,
Range & new_triangles,
EntityHandle new_geo_edge, Range & first, Range & second)
{
@@ -1487,6 +1493,7 @@
// an edge in the new_geo_edge, it is skipped; triangles in the
// triangles to delete are not added
// first, create all edges of the new triangles
More information about the moab-dev
mailing list