VTK  9.3.20240418
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 
49 VTK_ABI_NAMESPACE_BEGIN
51 
52 class VTKIMAGINGMORPHOLOGICAL_EXPORT vtkImageOpenClose3D : public vtkImageAlgorithm
53 {
54 public:
56 
61  void PrintSelf(ostream& os, vtkIndent indent) override;
63 
68  vtkMTimeType GetMTime() override;
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);
105  double GetCloseValue();
107 
109 
112  vtkGetObjectMacro(Filter0, vtkImageDilateErode3D);
113  vtkGetObjectMacro(Filter1, vtkImageDilateErode3D);
115 
121 
126  vtkInformationVector* outInfoVec, int requestFromOutputPort, vtkMTimeType* mtime) override;
127 
128 protected:
131 
134 
136 
137 private:
138  vtkImageOpenClose3D(const vtkImageOpenClose3D&) = delete;
139  void operator=(const vtkImageOpenClose3D&) = delete;
140 };
141 
142 VTK_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.
int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime) override
Override to send the request to internal pipeline.
static vtkImageOpenClose3D * New()
Default open value is 0, and default close value is 255.
~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.
@ value
Definition: vtkX3D.h:220
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270