[cgma-dev] r4304 - cgm/trunk/geom/OCC
jiangtao_ma at yahoo.com
jiangtao_ma at yahoo.com
Tue Nov 30 08:43:59 CST 2010
Author: janehu
Date: 2010-11-30 08:43:59 -0600 (Tue, 30 Nov 2010)
New Revision: 4304
Modified:
cgm/trunk/geom/OCC/OCCModifyEngine.cpp
cgm/trunk/geom/OCC/OCCQueryEngine.cpp
Log:
Fixed tolerance issue on hexlat2 & 3 for not imprinting edges, and some minor issue with error message managing. Passed all tests.
Modified: cgm/trunk/geom/OCC/OCCModifyEngine.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCModifyEngine.cpp 2010-11-29 22:02:51 UTC (rev 4303)
+++ cgm/trunk/geom/OCC/OCCModifyEngine.cpp 2010-11-30 14:43:59 UTC (rev 4304)
@@ -2418,7 +2418,15 @@
CubitBox aBox_e(min, max);
aBox_face.Get( min[0], min[1], min[2], max[0], max[1], max[2]);
CubitBox aBox_f(min, max);
- if (aBox_e <= aBox_f)
+ //hexlat3 has tolerance issue where aBox_e.x_min is within
+ //tolerance and greater than aBox_f.x_min, coursing no edge
+ //imprint of the faces. change to add consideration of tolerance
+ if (aBox_e.min_x() >= aBox_f.min_x() - TOL &&
+ aBox_e.min_y() >= aBox_f.min_y() - TOL &&
+ aBox_e.min_z() >= aBox_f.min_z() - TOL &&
+ aBox_e.max_x() <= aBox_f.max_x() + TOL &&
+ aBox_e.max_y() <= aBox_f.max_y() + TOL &&
+ aBox_e.max_z() <= aBox_f.max_z() + TOL)
{
Curve* curve = OCCQueryEngine::instance()->populate_topology_bridge(edge);
curve_list.append(curve);
@@ -3755,8 +3763,8 @@
new_bodies.append(bodysm);
}
- if(tbs.size() == 0)
- stat = CUBIT_FAILURE;
+ //if(tbs.size() == 0)
+ // stat = CUBIT_FAILURE;
//ok, we're done with all cuts, delete unnecessaries.
if(!keep_old)
Modified: cgm/trunk/geom/OCC/OCCQueryEngine.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCQueryEngine.cpp 2010-11-29 22:02:51 UTC (rev 4303)
+++ cgm/trunk/geom/OCC/OCCQueryEngine.cpp 2010-11-30 14:43:59 UTC (rev 4304)
@@ -2412,26 +2412,26 @@
TopoDS_Shape* shape = occ_body->get_TopoDS_Shape();
- if (!shape || shape->IsNull())
- return CUBIT_SUCCESS;
+ if (shape && !shape->IsNull())
+ {
+ //remove the entry from label tree
+ OCCAttribSet::remove_attribute(*shape) ;
- //remove the entry from label tree
- OCCAttribSet::remove_attribute(*shape) ;
+ //remove the entry from the map
More information about the cgma-dev
mailing list