regression mesh_BLSURF/A1

fix Evaluate()

-  list< SMESH_subMesh* > meshedSM[3]; // for 0-2 dimensions
+  list< SMESH_subMesh* > meshedSM[4]; // for 0-3 dimensions 3D mesh can be computed!
This commit is contained in:
eap 2012-11-22 17:45:08 +00:00
parent 11d8d0791e
commit 6529fef188

View File

@ -2607,7 +2607,7 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
// Prepare OCC geometry // Prepare OCC geometry
// ------------------------- // -------------------------
netgen::OCCGeometry occgeo; netgen::OCCGeometry occgeo;
list< SMESH_subMesh* > meshedSM[3]; // for 0-2 dimensions list< SMESH_subMesh* > meshedSM[4]; // for 0-3 dimensions
NETGENPlugin_Internals internals( *_mesh, _shape, _isVolume ); NETGENPlugin_Internals internals( *_mesh, _shape, _isVolume );
PrepareOCCgeometry( occgeo, _shape, *_mesh, meshedSM, &internals ); PrepareOCCgeometry( occgeo, _shape, *_mesh, meshedSM, &internals );
@ -2642,7 +2642,7 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
netgen::Mesh *ngMesh = NULL; netgen::Mesh *ngMesh = NULL;
char *optstr = 0; char *optstr = 0;
int startWith = netgen::MESHCONST_ANALYSE; int startWith = netgen::MESHCONST_ANALYSE;
int endWith = netgen::MESHCONST_ANALYSE; int endWith = netgen::MESHCONST_MESHEDGES;
int err = netgen::OCCGenerateMesh(occgeo, ngMesh, startWith, endWith, optstr); int err = netgen::OCCGenerateMesh(occgeo, ngMesh, startWith, endWith, optstr);
#ifdef WITH_SMESH_CANCEL_COMPUTE #ifdef WITH_SMESH_CANCEL_COMPUTE
if(netgen::multithread.terminate) if(netgen::multithread.terminate)
@ -2747,6 +2747,8 @@ bool NETGENPlugin_Mesher::Evaluate(MapShapeNbElems& aResMap)
fullNbSeg += aVec[ entity ]; fullNbSeg += aVec[ entity ];
Edge2NbSeg( Edge2NbSegIt.Key() ) = aVec[ entity ]; Edge2NbSeg( Edge2NbSegIt.Key() ) = aVec[ entity ];
} }
if ( fullNbSeg == 0 )
return false;
// ---------------- // ----------------
// evaluate 2D // evaluate 2D