VTK  9.3.20240425
vtkImageOpenClose3D.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
43#ifndef vtkImageOpenClose3D_h
44#define vtkImageOpenClose3D_h
45
46#include "vtkImageAlgorithm.h"
47#include "vtkImagingMorphologicalModule.h" // For export macro
48
49VTK_ABI_NAMESPACE_BEGIN
51
52class VTKIMAGINGMORPHOLOGICAL_EXPORT vtkImageOpenClose3D : public vtkImageAlgorithm
53{
54public:
56
61 void PrintSelf(ostream& os, vtkIndent indent) override;
63
69
71
74 void DebugOn() override;
75 void DebugOff() override;
77
81 void Modified() override;
82
83 // Forward Source messages to filter1
84
88 void SetKernelSize(int size0, int size1, int size2);
89
91
95 void SetOpenValue(double value);
96 double GetOpenValue();
98
100
104 void SetCloseValue(double value);
107
109
112 vtkGetObjectMacro(Filter0, vtkImageDilateErode3D);
113 vtkGetObjectMacro(Filter1, vtkImageDilateErode3D);
115
121
126 vtkInformationVector* outInfoVec, int requestFromOutputPort, vtkMTimeType* mtime) override;
127
128protected:
131
134
136
137private:
139 void operator=(const vtkImageOpenClose3D&) = delete;
140};
141
142VTK_ABI_NAMESPACE_END
143#endif
Detect and break reference loops.
Generic algorithm superclass for image algs.
Dilates one value and erodes another.
Will perform opening or closing.
vtkMTimeType GetMTime() override
This method considers the sub filters MTimes when computing this objects modified time.
vtkImageDilateErode3D * Filter0
void PrintSelf(ostream &os, vtkIndent indent) override
Default open value is 0, and default close value is 255.
void DebugOff() override
Turn debugging output on.
void ReportReferences(vtkGarbageCollector *) override
void SetOpenValue(double value)
Determines the value that will opened.
void DebugOn() override
Turn debugging output on.
void SetCloseValue(double value)
Determines the value that will closed.
static vtkImageOpenClose3D * New()
Default open value is 0, and default close value is 255.
int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime) override
Override to send the request to internal pipeline.
~vtkImageOpenClose3D() override
double GetOpenValue()
Determines the value that will opened.
void SetKernelSize(int size0, int size1, int size2)
Selects the size of gaps or objects removed.
double GetCloseValue()
Determines the value that will closed.
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
void Modified() override
Pass modified message to sub filters.
vtkImageDilateErode3D * Filter1
a simple class to control print indentation
Definition vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
int vtkTypeBool
Definition vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:270