Go to the documentation of this file.00001 #ifndef MITKERODETOOL_H
00002 #define MITKERODETOOL_H
00003
00004 #include "mitkMorphologicTool.h"
00005 #include "MitkExtExports.h"
00006
00007
00008 #include <itkBinaryBallStructuringElement.h>
00009 #include <itkBinaryCrossStructuringElement.h>
00010 #include <itkBinaryErodeImageFilter.h>
00011
00012 #include "mitkErodeTool.xpm"
00013
00014 namespace mitk {
00015
00016 class MitkExt_EXPORT ErodeTool : public MorphologicTool {
00017
00018 typedef itk::Image< unsigned char, 3 > SegmentationType;
00019 typedef itk::BinaryBallStructuringElement< SegmentationType::PixelType, 3 > BallType;
00020 typedef itk::BinaryCrossStructuringElement< SegmentationType::PixelType, 3 > CrossType;
00021 typedef itk::BinaryErodeImageFilter< SegmentationType, SegmentationType, BallType > BallErodeFilterType;
00022 typedef itk::BinaryErodeImageFilter< SegmentationType, SegmentationType, CrossType > CrossErodeFilterType;
00023
00024 public:
00025 mitkClassMacro(ErodeTool, MorphologicTool);
00026 itkNewMacro(ErodeTool);
00027
00028 virtual const char* GetName() const;
00029 virtual const char** GetXPM() const;
00030
00031 protected:
00032
00033 ErodeTool();
00034 virtual ~ErodeTool();
00035
00036 mitk::Image::Pointer ApplyFilter(mitk::Image::Pointer);
00037
00038 BallType m_Ball;
00039 BallErodeFilterType::Pointer m_BallErodeFilter;
00040
00041 };
00042
00043
00044 }
00045
00046 #endif