diff --git a/Geo/gmshLevelset.h b/Geo/gmshLevelset.h index c0a8908c7a35132c872a110066ed4d42401fa56a..5f4ce2116e63e84c1cee31349b6758f86af6ad46 100644 --- a/Geo/gmshLevelset.h +++ b/Geo/gmshLevelset.h @@ -22,6 +22,7 @@ #include "cartesian.h" #include "simpleFunction.h" + #if defined(HAVE_POST) #include "PView.h" #include "OctreePost.h" @@ -292,6 +293,21 @@ public: int type() const { return UNKNOWN; } }; +class gLevelsetSimpleFunction: public gLevelsetPrimitive +{ + simpleFunction<double> *_f; +public: + gLevelsetSimpleFunction(simpleFunction<double> *f, int tag=1){ + _f = f; + } + ~gLevelsetSimpleFunction(){} + double operator () (const double x, const double y, const double z) const + { + return (*_f)(x,y,z); + } + int type() const { return UNKNOWN; } +}; + class gLevelsetDistGeom: public gLevelsetPrimitive { cartesianBox<double> *_box; diff --git a/benchmarks/centerlines/aorta_centerlines.geo b/benchmarks/centerlines/aorta_centerlines.geo index dd0d76ec71b1225a7d2f82393f442e15472de38c..645bc2cf90969926931764f52ca9fcb76874a7de 100644 --- a/benchmarks/centerlines/aorta_centerlines.geo +++ b/benchmarks/centerlines/aorta_centerlines.geo @@ -1,10 +1,10 @@ -Mesh.Algorithm = 7; //(1=MeshAdapt, 2=Automatic, 5=Delaunay, 6=Frontal, 7=bamg, 8=delquad) +Mesh.Algorithm = 8; //(1=MeshAdapt, 2=Automatic, 5=Delaunay, 6=Frontal, 7=bamg, 8=delquad) Mesh.Algorithm3D = 7; //(1=tetgen, 4=netgen, 5=FrontalDel, 6=FrontalHex, 7=MMG3D, 9=R-tree -Mesh.LcIntegrationPrecision = 1.e-2; +Mesh.LcIntegrationPrecision = 1.e-3; -//Mesh.RecombineAll = 1; -//Mesh.Bunin = 60; +Mesh.RecombineAll = 1; +Mesh.Bunin = 60; Merge "aorta2.stl";