Medical Imaging Interaction Toolkit  2024.06.99-35a6d053
Medical Imaging Interaction Toolkit
mitk::ReduceContourSetFilter Class Reference

A filter that reduces the number of points of contours represented by a mitk::Surface. More...

#include <mitkReduceContourSetFilter.h>

Inheritance diagram for mitk::ReduceContourSetFilter:
Collaboration diagram for mitk::ReduceContourSetFilter:

Classes

struct  LineSegment
 

Public Types

enum  Reduction_Type { NTH_POINT, DOUGLAS_PEUCKER }
 
- Public Types inherited from mitk::SurfaceToSurfaceFilter
typedef SurfaceToSurfaceFilter Self
 
typedef mitk::SurfaceSource Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
- Public Types inherited from mitk::SurfaceSource
typedef SurfaceSource Self
 
typedef BaseDataSource Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef Surface OutputType
 
- Public Types inherited from mitk::BaseDataSource
typedef BaseDataSource Self
 
typedef itk::ProcessObject Superclass
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::SmartPointer< const SelfConstPointer
 
typedef BaseData OutputType
 
typedef itk::DataObject::DataObjectIdentifierType DataObjectIdentifierType
 

Public Member Functions

 mitkClassMacro (ReduceContourSetFilter, SurfaceToSurfaceFilter)
 
Pointer Clone () const
 
virtual void SetMinSpacing (double _arg)
 
virtual void SetMaxSpacing (double _arg)
 
virtual void SetReductionType (Reduction_Type _arg)
 
virtual void SetStepSize (unsigned int _arg)
 
virtual void SetTolerance (double _arg)
 
virtual unsigned int GetNumberOfPointsAfterReduction ()
 
void Reset ()
 
void SetUseProgressBar (bool)
 Set whether the mitkProgressBar should be used. More...
 
void SetInput (const mitk::Surface *surface) override
 
void SetInput (unsigned int idx, const mitk::Surface *surface) override
 Add a new input at the given index (idx) Calls mitk::Surface::CreateOutputForInput(idx) More...
 
void SetProgressStepSize (unsigned int stepSize)
 Set the stepsize which the progress bar should proceed. More...
 
- Public Member Functions inherited from mitk::SurfaceToSurfaceFilter
virtual std::vector< std::string > GetClassHierarchy () const override
 
virtual const char * GetClassName () const
 
Pointer Clone () const
 
virtual const mitk::SurfaceGetInput ()
 
virtual const mitk::SurfaceGetInput (unsigned int idx)
 
virtual void CreateOutputForInput (unsigned int idx)
 Create a new output for the input at idx. More...
 
virtual void CreateOutputsForAllInputs ()
 Creates outputs for all existing inputs. More...
 
virtual void RemoveInputs (mitk::Surface *surface)
 
- Public Member Functions inherited from mitk::SurfaceSource
Pointer Clone () const
 
OutputTypeGetOutput ()
 
const OutputTypeGetOutput () const
 
OutputTypeGetOutput (DataObjectPointerArraySizeType idx)
 
const OutputTypeGetOutput (DataObjectPointerArraySizeType idx) const
 
itk::DataObject::Pointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
itk::DataObject::Pointer MakeOutput (const DataObjectIdentifierType &name) override
 
- Public Member Functions inherited from mitk::BaseDataSource
OutputTypeGetOutput ()
 
const OutputTypeGetOutput () const
 
OutputTypeGetOutput (DataObjectPointerArraySizeType idx)
 
const OutputTypeGetOutput (DataObjectPointerArraySizeType idx) const
 
virtual void GraftOutput (OutputType *output)
 Graft the specified BaseData onto this BaseDataSource's output. More...
 
virtual void GraftOutput (const DataObjectIdentifierType &key, OutputType *output)
 
virtual void GraftNthOutput (unsigned int idx, OutputType *output)
 Graft the specified base data object onto this BaseDataSource's idx'th output. More...
 
bool Updating () const
 Access itk::ProcessObject::m_Updating. More...
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from mitk::SurfaceToSurfaceFilter
static const char * GetStaticNameOfClass ()
 
static Pointer New ()
 
- Static Public Member Functions inherited from mitk::SurfaceSource
static const char * GetStaticNameOfClass ()
 
static Pointer New ()
 
- Static Public Member Functions inherited from mitk::BaseDataSource
static const char * GetStaticNameOfClass ()
 

Protected Member Functions

 ReduceContourSetFilter ()
 
 ~ReduceContourSetFilter () override
 
void GenerateData () override
 
void GenerateOutputInformation () override
 
- Protected Member Functions inherited from mitk::SurfaceToSurfaceFilter
 SurfaceToSurfaceFilter ()
 
 ~SurfaceToSurfaceFilter () override
 
- Protected Member Functions inherited from mitk::SurfaceSource
 SurfaceSource ()
 
 ~SurfaceSource () override
 
- Protected Member Functions inherited from mitk::BaseDataSource
 BaseDataSource ()
 
 ~BaseDataSource () override
 

Additional Inherited Members

- Static Protected Member Functions inherited from mitk::BaseDataSource
static Pointer New ()
 

Detailed Description

A filter that reduces the number of points of contours represented by a mitk::Surface.

The type of the reduction can be set via SetReductionType. The two ways provided by this filter is the

  • NTH_POINT Algorithm which reduces the contours according to a certain stepsize
  • DOUGLAS_PEUCKER Algorithm which incorpates an error tolerance into the reduction.

Stepsize and error tolerance can be set via SetStepSize and SetTolerance.

Additional if more than one input contour is provided this filter tries detect contours which occur just because of an intersection. These intersection contours are eliminated. In oder to ensure a correct elimination the min and max spacing of the original image must be provided.

The output is a mitk::Surface.

Author
fetzer

Definition at line 52 of file mitkReduceContourSetFilter.h.

Member Enumeration Documentation

◆ Reduction_Type

Enumerator
NTH_POINT 
DOUGLAS_PEUCKER 

Definition at line 55 of file mitkReduceContourSetFilter.h.

Constructor & Destructor Documentation

◆ ReduceContourSetFilter()

mitk::ReduceContourSetFilter::ReduceContourSetFilter ( )
protected

◆ ~ReduceContourSetFilter()

mitk::ReduceContourSetFilter::~ReduceContourSetFilter ( )
overrideprotected

Member Function Documentation

◆ Clone()

Pointer mitk::ReduceContourSetFilter::Clone ( ) const

◆ GenerateData()

void mitk::ReduceContourSetFilter::GenerateData ( )
overrideprotected

◆ GenerateOutputInformation()

void mitk::ReduceContourSetFilter::GenerateOutputInformation ( )
overrideprotected

◆ GetNumberOfPointsAfterReduction()

virtual unsigned int mitk::ReduceContourSetFilter::GetNumberOfPointsAfterReduction ( )
virtual

◆ mitkClassMacro()

mitk::ReduceContourSetFilter::mitkClassMacro ( ReduceContourSetFilter  ,
SurfaceToSurfaceFilter   
)

◆ New()

static Pointer mitk::ReduceContourSetFilter::New ( )
static

◆ Reset()

void mitk::ReduceContourSetFilter::Reset ( )

◆ SetInput() [1/2]

void mitk::ReduceContourSetFilter::SetInput ( const mitk::Surface surface)
overridevirtual

Reimplemented from mitk::SurfaceToSurfaceFilter.

◆ SetInput() [2/2]

void mitk::ReduceContourSetFilter::SetInput ( unsigned int  idx,
const mitk::Surface surface 
)
overridevirtual

Add a new input at the given index (idx) Calls mitk::Surface::CreateOutputForInput(idx)

Note
The inputs must be added sequentially
Parameters
idxthe index of the input, which must be incremental
surfacethe input which should be added

Reimplemented from mitk::SurfaceToSurfaceFilter.

◆ SetMaxSpacing()

virtual void mitk::ReduceContourSetFilter::SetMaxSpacing ( double  _arg)
virtual

◆ SetMinSpacing()

virtual void mitk::ReduceContourSetFilter::SetMinSpacing ( double  _arg)
virtual

◆ SetProgressStepSize()

void mitk::ReduceContourSetFilter::SetProgressStepSize ( unsigned int  stepSize)

Set the stepsize which the progress bar should proceed.

Parameter The stepsize for progressing

◆ SetReductionType()

virtual void mitk::ReduceContourSetFilter::SetReductionType ( Reduction_Type  _arg)
virtual

◆ SetStepSize()

virtual void mitk::ReduceContourSetFilter::SetStepSize ( unsigned int  _arg)
virtual

◆ SetTolerance()

virtual void mitk::ReduceContourSetFilter::SetTolerance ( double  _arg)
virtual

◆ SetUseProgressBar()

void mitk::ReduceContourSetFilter::SetUseProgressBar ( bool  )

Set whether the mitkProgressBar should be used.

Parameter true for using the progress bar, false otherwise


The documentation for this class was generated from the following file: