diff --git a/contrib/Netgen/nglib_addon.cpp b/contrib/Netgen/nglib_addon.cpp index 51527333faabc2fae202442aa7d5afb15dcdb197..8796bd7105019c48c891b5368579266da62b65fe 100644 --- a/contrib/Netgen/nglib_addon.cpp +++ b/contrib/Netgen/nglib_addon.cpp @@ -31,7 +31,7 @@ class mystreambuf: public streambuf } else{ if(!strncmp(txt, "ERROR", 5)) - Msg::Fatal(txt); + Msg::Error(txt); else Msg::Info(txt); } @@ -76,11 +76,16 @@ Ng_Result NgAddOn_GenerateVolumeMesh(Ng_Mesh *mesh, double maxh) MeshingParameters mparam; mparam.uselocalh = 1; mparam.maxh = maxh; - - m->CalcLocalH(); - MeshVolume(mparam, *m); - //RemoveIllegalElements(*m); - //OptimizeVolume(mparam, *m); + + try{ + m->CalcLocalH(); + MeshVolume(mparam, *m); + //RemoveIllegalElements(*m); + //OptimizeVolume(mparam, *m); + } + catch(netgen::NgException error){ + return NG_VOLUME_FAILURE; + } return NG_OK; } @@ -93,10 +98,15 @@ Ng_Result NgAddOn_OptimizeVolumeMesh(Ng_Mesh *mesh, double maxh) mparam.uselocalh = 1; mparam.maxh = maxh; - m->CalcLocalH(); - //MeshVolume(mparam, *m); - RemoveIllegalElements(*m); - OptimizeVolume(mparam, *m); + try{ + m->CalcLocalH(); + //MeshVolume(mparam, *m); + RemoveIllegalElements(*m); + OptimizeVolume(mparam, *m); + } + catch(netgen::NgException error){ + return NG_VOLUME_FAILURE; + } return NG_OK; }