13 #ifndef mitkPlanarFigureMaskGenerator_h
14 #define mitkPlanarFigureMaskGenerator_h
21 #include <vtkSmartPointer.h>
42 unsigned int GetNumberOfMasks()
const override;
48 itkGetConstMacro(PlanarFigureAxis,
unsigned int);
49 itkGetConstMacro(PlanarFigureSlice,
unsigned int);
58 m_ReferenceImage(nullptr),
59 m_PlanarFigureAxis(0),
60 m_InternalMaskUpdateTime(0),
61 m_PlanarFigureSlice(0)
71 template <
typename TPixel,
unsigned int VImageDimension>
72 void InternalCalculateMaskFromClosedPlanarFigure(
const itk::Image<TPixel, VImageDimension> *image,
unsigned int axis);
74 template <
typename TPixel,
unsigned int VImageDimension>
75 void InternalCalculateMaskFromOpenPlanarFigure(
const itk::Image<TPixel, VImageDimension> *image,
unsigned int axis);
83 template <
typename ITK_Exporter,
typename VTK_Importer>
86 importer->SetUpdateInformationCallback(exporter->GetUpdateInformationCallback());
88 importer->SetPipelineModifiedCallback(exporter->GetPipelineModifiedCallback());
89 importer->SetWholeExtentCallback(exporter->GetWholeExtentCallback());
90 importer->SetSpacingCallback(exporter->GetSpacingCallback());
91 importer->SetOriginCallback(exporter->GetOriginCallback());
92 importer->SetScalarTypeCallback(exporter->GetScalarTypeCallback());
94 importer->SetNumberOfComponentsCallback(exporter->GetNumberOfComponentsCallback());
96 importer->SetPropagateUpdateExtentCallback(exporter->GetPropagateUpdateExtentCallback());
97 importer->SetUpdateDataCallback(exporter->GetUpdateDataCallback());
98 importer->SetDataExtentCallback(exporter->GetDataExtentCallback());
99 importer->SetBufferPointerCallback(exporter->GetBufferPointerCallback());
100 importer->SetCallbackUserData(exporter->GetCallbackUserData());
104 template <
typename VTK_Exporter,
typename ITK_Importer>
107 importer->SetUpdateInformationCallback(exporter->GetUpdateInformationCallback());
109 importer->SetPipelineModifiedCallback(exporter->GetPipelineModifiedCallback());
110 importer->SetWholeExtentCallback(exporter->GetWholeExtentCallback());
111 importer->SetSpacingCallback(exporter->GetSpacingCallback());
112 importer->SetOriginCallback(exporter->GetOriginCallback());
113 importer->SetScalarTypeCallback(exporter->GetScalarTypeCallback());
115 importer->SetNumberOfComponentsCallback(exporter->GetNumberOfComponentsCallback());
117 importer->SetPropagateUpdateExtentCallback(exporter->GetPropagateUpdateExtentCallback());
118 importer->SetUpdateDataCallback(exporter->GetUpdateDataCallback());
119 importer->SetDataExtentCallback(exporter->GetDataExtentCallback());
120 importer->SetBufferPointerCallback(exporter->GetBufferPointerCallback());
121 importer->SetCallbackUserData(exporter->GetCallbackUserData());
124 bool IsUpdateRequired()
const;
127 itk::Image<unsigned short, 2>::Pointer m_InternalITKImageMask2D;
129 unsigned int m_PlanarFigureAxis;
130 unsigned long m_InternalMaskUpdateTime;
131 unsigned int m_PlanarFigureSlice;