13 #ifndef mitkBoundingObjectCutter_h
14 #define mitkBoundingObjectCutter_h
44 itkFactorylessNewMacro(Self);
91 itkSetMacro(UseInsideValue,
bool);
97 itkGetMacro(UseInsideValue,
bool);
100 itkBooleanMacro(UseInsideValue);
110 itkSetMacro(AutoOutsideValue,
bool);
116 itkGetMacro(AutoOutsideValue,
bool);
119 itkBooleanMacro(AutoOutsideValue);
125 itkGetMacro(InsidePixelCount,
unsigned int);
131 itkGetMacro(OutsidePixelCount,
unsigned int);
137 itkSetMacro(UseWholeInputRegion,
bool);
143 itkGetMacro(UseWholeInputRegion,
bool);
155 template <
typename TPixel,
unsigned int VImageDimension,
typename TOutputPixel>
159 TOutputPixel *dummy);
160 template <
typename TPixel,
unsigned int VImageDimension,
typename TOutputPixel>
164 TOutputPixel *dummy);
165 template <
typename TPixel,
unsigned int VImageDimension>
166 friend void CutImage(itk::Image<TPixel, VImageDimension> *itkImage,
169 template <
typename TPixel,
unsigned int VImageDimension>
170 friend void CutImage(itk::VectorImage<TPixel, VImageDimension> *itkImage,
#define MITKALGORITHMSEXT_EXPORT
Cuts a BoundingObject region out of a mitk::Image.
unsigned int m_OutsidePixelCount
mitk::ImageTimeSelector::Pointer m_InputTimeSelector
const mitk::BoundingObject * GetBoundingObject() const
Get the bounding object that defines the cutting region.
friend void CutImageWithOutputTypeSelect(itk::Image< TPixel, VImageDimension > *inputItkImage, mitk::BoundingObjectCutter *cutter, int boTimeStep, TOutputPixel *dummy)
mitk::ImageTimeSelector::Pointer m_OutputTimeSelector
unsigned int m_InsidePixelCount
void GenerateInputRequestedRegion() override
void GenerateData() override
mitk::BoundingObject::Pointer m_BoundingObject
BoundingObject that will be cut.
virtual void ComputeData(mitk::Image *input3D, int boTimeStep)
itk::TimeStamp m_TimeOfHeaderInitialization
Time when header was last initialized.
void SetBoundingObject(const mitk::BoundingObject *boundingObject)
Set the bounding object that defines the cutting region.
friend void CutImageWithOutputTypeSelect(itk::VectorImage< TPixel, VImageDimension > *inputItkImage, mitk::BoundingObjectCutter *cutter, int boTimeStep, TOutputPixel *dummy)
ScalarType m_InsideValue
Value for inside pixels, used when m_UseInsideValue is true.
mitkClassMacro(BoundingObjectCutter, ImageToImageFilter)
mitk::SlicedData::RegionType m_InputRequestedRegion
Region of input needed for cutting.
bool m_UseWholeInputRegion
void GenerateOutputInformation() override
bool m_UseInsideValue
Use m_InsideValue for inside pixels (default: false).
virtual const PixelType GetOutputPixelType()
bool m_AutoOutsideValue
If true, the minimum of the output pixel type is used as outside value (default: false).
ScalarType m_OutsideValue
Value for outside pixels (default: 0). Used only if m_AutoOutsideValue is false.
~BoundingObjectCutter() override
friend void CutImage(itk::VectorImage< TPixel, VImageDimension > *itkImage, mitk::BoundingObjectCutter *cutter, int boTimeStep)
friend void CutImage(itk::Image< TPixel, VImageDimension > *itkImage, mitk::BoundingObjectCutter *cutter, int boTimeStep)
Abstract superclass of all bounding objects (cylinder, cuboid, cone, ellipsoid, etc....
Superclass of all classes having one or more Images as input and generating Images as output.
Image class for storing multi-dimensional medical image data.
Describes the data type of image pixels.
itk::ImageRegion< RegionDimension > RegionType
Find image slices visible on a given plane.
double ScalarType
Scalar type used throughout MITK for geometric computations.