NanoShaper
0.7.2
NanoShaper is a tool able to triangulate and inspect an arbitray triangulated surface or several types of molecular surfaces
|
00001 00002 //--------------------------------------------------------- 00006 //--------------------------------------------------------- 00007 00008 #ifndef BlobbySurface_h 00009 #define BlobbySurface_h 00010 00011 #include "Surface.h" 00012 #include "MeshSurface.h" 00013 00014 #ifdef DBGMEM_CRT 00015 #define _CRTDBG_MAP_ALLOC 00016 #define _CRTDBG_MAP_ALLOC_NEW 00017 #endif 00018 00019 #define DEFAULT_BLOBBYNESS -2.5 00020 #define DEFAULT_CUTOFF 6 00021 00027 class BlobbySurface: public MeshSurface 00028 { 00029 private: 00031 double B; 00034 double cutoff; 00035 00036 public: 00038 BlobbySurface(); 00040 BlobbySurface(DelPhiShared* ds); 00041 BlobbySurface(ConfigFile* cf,DelPhiShared* ds); 00042 00044 00045 virtual bool build(); 00047 virtual void printSummary(); 00049 virtual void init(); 00051 virtual void init(ConfigFile* cf); 00053 virtual void clear(); 00055 00057 void setBlobbyness(double b); 00058 double getBlobbyness(); 00059 00060 virtual ~BlobbySurface(); 00061 }; 00062 00063 00064 // expand it explicitly because Swig is not able to expand it 00065 static class BlobbySurfaceRegister{ 00066 static Surface* createSurface(ConfigFile* conf,DelPhiShared* ds) 00067 { 00068 return new BlobbySurface(conf,ds); 00069 } 00070 public: 00071 BlobbySurfaceRegister() 00072 { 00073 surfaceFactory().add("blobby",createSurface); 00074 } 00075 } BlobbySurfaceRegisterObject; 00076 00077 //static SurfaceRecorder<BlobbySurface> blobbyRecorder("blobby"); 00078 00079 #endif