00001 #include "mitkDilateTool.h" 00002 #include "mitkImageCast.h" 00003 00004 namespace mitk{ 00005 MITK_TOOL_MACRO(MitkExt_EXPORT, DilateTool, "Dilate Tool"); 00006 } 00007 00008 mitk::DilateTool::DilateTool() 00009 { 00010 } 00011 00012 mitk::DilateTool::~DilateTool() 00013 { 00014 00015 } 00016 00017 const char* mitk::DilateTool::GetName() const 00018 { 00019 return "Dilate Tool"; 00020 } 00021 00022 const char** mitk::DilateTool::GetXPM() const 00023 { 00024 return mitkDilateTool_xpm; 00025 } 00026 00027 mitk::Image::Pointer mitk::DilateTool::ApplyFilter(mitk::Image::Pointer image) 00028 { 00029 SegmentationType::Pointer itkImage = SegmentationType::New(); 00030 mitk::CastToItkImage(image, itkImage); 00031 m_Ball.SetRadius( m_Radius); 00032 m_Ball.CreateStructuringElement(); 00033 m_BallDilateFilter = BallDilateFilterType::New(); 00034 m_BallDilateFilter->SetKernel(m_Ball); 00035 m_BallDilateFilter->SetInput(itkImage); 00036 m_BallDilateFilter->SetDilateValue(1); 00037 m_BallDilateFilter->UpdateLargestPossibleRegion(); 00038 00039 mitk::Image::Pointer new_image = mitk::Image::New(); 00040 mitk::CastToMitkImage(m_BallDilateFilter->GetOutput(), new_image); 00041 return new_image; 00042 }