00001 /*========================================================================= 00002 00003 Program: 3DMed 00004 Date: $Date: 2014-02-25 18:30:00 +0800 $ 00005 Version: $Version: 4.6.0 $ 00006 Copyright: MIPG, Institute of Automation, Chinese Academy of Sciences 00007 00008 =========================================================================*/ 00009 00010 00011 #ifndef __mitkEuclideanDistanceTransformFilter_h 00012 #define __mitkEuclideanDistanceTransformFilter_h 00013 00014 #include "mitkVolumeToVolumeFilter.h" 00015 00020 class MITK_COMMON_API mitkEuclideanDistanceTransformFilter : public mitkVolumeToVolumeFilter 00021 { 00022 public: 00023 MITK_TYPE(mitkEuclideanDistanceTransformFilter,mitkVolumeToVolumeFilter) 00024 00025 mitkEuclideanDistanceTransformFilter(); 00026 00031 void SetLowThreshValue(double d){this->m_LowThresh = d;} 00036 int GetLowThreshValue(){return this->m_LowThresh;} 00041 void SetHighThreshValue(double d){this->m_HighThresh = d;} 00046 int GetHighThreshValue(){return this->m_HighThresh;} 00047 00052 void SetSquareDistance(bool sd) { m_SquareDistance=sd;} 00053 00058 bool UsingSquareDistance() { return m_SquareDistance;} 00059 00065 void SetBackgroundMode(bool bm=true) {m_BackgroundMode=bm;} 00066 00067 protected: 00068 virtual ~mitkEuclideanDistanceTransformFilter(); 00069 00070 virtual bool Execute(); 00071 00072 double m_LowThresh; 00073 double m_HighThresh; 00074 00075 bool m_SquareDistance; 00076 bool m_BackgroundMode; 00077 00078 private: 00079 mitkEuclideanDistanceTransformFilter(const mitkEuclideanDistanceTransformFilter&); 00080 void operator=(const mitkEuclideanDistanceTransformFilter&); 00081 00082 }; 00083 00084 #endif