[MOAB-dev] r5315 - in MOAB/trunk: src src/moab test
iulian at mcs.anl.gov
iulian at mcs.anl.gov
Thu Jan 12 14:50:43 CST 2012
Author: iulian
Date: 2012-01-12 14:50:43 -0600 (Thu, 12 Jan 2012)
New Revision: 5315
Modified:
MOAB/trunk/src/FBEngine.cpp
MOAB/trunk/src/moab/FBEngine.hpp
MOAB/trunk/test/crop_vol_test.cpp
MOAB/trunk/test/mbfacet_test.cpp
MOAB/trunk/test/mbground_test.cpp
Log:
add feature angle option in terms of min_dot (minimum cos of angle between
2 edges)
this affects only edges built by splitting an existing surface right now,
not the g edges existing in the moab database.
Modified: MOAB/trunk/src/FBEngine.cpp
===================================================================
--- MOAB/trunk/src/FBEngine.cpp 2012-01-12 17:49:38 UTC (rev 5314)
+++ MOAB/trunk/src/FBEngine.cpp 2012-01-12 20:50:43 UTC (rev 5315)
@@ -1149,8 +1149,8 @@
return MB_SUCCESS;
}
-ErrorCode FBEngine::split_surface_with_direction(EntityHandle face, std::vector<double> & xyz,
- double * direction, EntityHandle & newFace, int closed)
+ErrorCode FBEngine::split_surface_with_direction(EntityHandle face, std::vector<double> & xyz, double * direction,
+ int closed, double min_dot, EntityHandle & oNewFace )
{
// first of all, find all intersection points (piercing in the face along the direction)
@@ -1420,10 +1420,10 @@
// the segment between point_i and point_i+1 is in trianglesAlong_i
// points_i is on entities_i
// all these edges are oriented correctly
- rval = split_surface(face, chainedEdges, splittingNodes, newFace);
+ rval = split_surface(face, chainedEdges, splittingNodes, oNewFace);
MBERRORR(rval, "can't split surface");
//
- rval = chain_edges(0.8); // acos(0.8)~= 36 degrees
+ rval = chain_edges(min_dot); // acos(0.8)~= 36 degrees
MBERRORR(rval, "can't chain edges");
return MB_SUCCESS;
}
Modified: MOAB/trunk/src/moab/FBEngine.hpp
===================================================================
--- MOAB/trunk/src/moab/FBEngine.hpp 2012-01-12 17:49:38 UTC (rev 5314)
+++ MOAB/trunk/src/moab/FBEngine.hpp 2012-01-12 20:50:43 UTC (rev 5315)
@@ -125,7 +125,7 @@
bool& adjacent_out );
ErrorCode split_surface_with_direction(EntityHandle face, std::vector<double> & xyz, double * direction,
- EntityHandle & newFace, int closed);
+ int closed, double min_dot, EntityHandle & oNewFace );
// these new points will be on edges or triangles, if in interior of triangles
ErrorCode split_surface(EntityHandle face,
std::vector<EntityHandle> & chainedEdges,
Modified: MOAB/trunk/test/crop_vol_test.cpp
===================================================================
--- MOAB/trunk/test/crop_vol_test.cpp 2012-01-12 17:49:38 UTC (rev 5314)
+++ MOAB/trunk/test/crop_vol_test.cpp 2012-01-12 20:50:43 UTC (rev 5315)
@@ -169,11 +169,11 @@
return MB_FAILURE;
}
EntityHandle newFace1;// first test is with closed surface
More information about the moab-dev
mailing list