Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _vtkKWEITKImageToStencilFilter_h
00023 #define _vtkKWEITKImageToStencilFilter_h
00024
00025 #include "VTKEdgeConfigure.h"
00026 #include "vtkKWEITKFilterModule.h"
00027
00028 class vtkImageData;
00029 class vtkImageStencilData;
00030
00031 namespace vtkitk
00032 {
00033
00034 class VTKEdge_WIDGETS_EXPORT vtkKWEITKImageToStencilFilter
00035 : public itk::Object
00036 {
00037 public:
00038 typedef vtkKWEITKImageToStencilFilter Self;
00039 typedef itk::Object Superclass;
00040 typedef itk::SmartPointer< Self > Pointer;
00041 typedef itk::SmartPointer< const Self > ConstPointer;
00042 itkTypeMacro(ConfidenceConnectedRunner, itk::Object);
00043
00044 itkStaticConstMacro( Dimension, unsigned int, 3);
00045 typedef unsigned char OutputPixelType;
00046 typedef itk::Image< OutputPixelType, Dimension > OutputImageType;
00047 typedef FilterModuleBase InternalFilterType;
00048
00049
00050 virtual void Update();
00051 virtual void SetInput( vtkImageData * );
00052 virtual int GetOutputAsStencil( vtkImageStencilData * );
00053 virtual void SetRequestedExtent( int extent[6] );
00054
00055 itkSetMacro( BoundWithRadius, bool );
00056 itkGetConstReferenceMacro( BoundWithRadius, bool );
00057 itkBooleanMacro( BoundWithRadius );
00058
00059 void SetCenter( int center[3] );
00060 void SetRadius( double radius[3] );
00061
00062 protected:
00063 vtkKWEITKImageToStencilFilter();
00064 ~vtkKWEITKImageToStencilFilter();
00065
00066 InternalFilterType * m_Filter;
00067 int m_Extent[6];
00068 bool m_BoundWithRadius;
00069 int m_Center[3];
00070 double m_Radius[3];
00071 };
00072
00073 }
00074
00075 #endif
00076