VTK
vtkImageThresholdConnectivity.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkImageThresholdConnectivity.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
36#ifndef vtkImageThresholdConnectivity_h
37#define vtkImageThresholdConnectivity_h
38
39#include "vtkImagingMorphologicalModule.h" // For export macro
40#include "vtkImageAlgorithm.h"
41
42class vtkPoints;
43class vtkImageData;
45
46class VTKIMAGINGMORPHOLOGICAL_EXPORT vtkImageThresholdConnectivity :
48{
49public:
52 void PrintSelf(ostream& os, vtkIndent indent);
53
55
60 vtkGetObjectMacro(SeedPoints, vtkPoints);
62
66 void ThresholdByUpper(double thresh);
67
71 void ThresholdByLower(double thresh);
72
77 void ThresholdBetween(double lower, double upper);
78
80
83 vtkSetMacro(ReplaceIn, int);
84 vtkGetMacro(ReplaceIn, int);
85 vtkBooleanMacro(ReplaceIn, int);
87
89
92 void SetInValue(double val);
93 vtkGetMacro(InValue, double);
95
97
100 vtkSetMacro(ReplaceOut, int);
101 vtkGetMacro(ReplaceOut, int);
102 vtkBooleanMacro(ReplaceOut, int);
104
106
109 void SetOutValue(double val);
110 vtkGetMacro(OutValue, double);
112
114
117 vtkGetMacro(UpperThreshold, double);
118 vtkGetMacro(LowerThreshold, double);
120
122
125 vtkSetVector2Macro(SliceRangeX, int);
126 vtkGetVector2Macro(SliceRangeX, int);
127 vtkSetVector2Macro(SliceRangeY, int);
128 vtkGetVector2Macro(SliceRangeY, int);
129 vtkSetVector2Macro(SliceRangeZ, int);
130 vtkGetVector2Macro(SliceRangeZ, int);
132
134
138 virtual void SetStencilData(vtkImageStencilData *stencil);
141
143
147 vtkSetMacro(ActiveComponent,int);
148 vtkGetMacro(ActiveComponent,int);
150
152
158 vtkSetVector3Macro(NeighborhoodRadius, double);
159 vtkGetVector3Macro(NeighborhoodRadius, double);
161
163
167 vtkSetClampMacro(NeighborhoodFraction, double, 0.0, 1.0);
168 vtkGetMacro(NeighborhoodFraction, double);
170
175
177
181 vtkGetMacro(NumberOfInVoxels, int);
183
184protected:
187
190 double InValue;
191 double OutValue;
194
195 double NeighborhoodRadius[3];
197
199
200 int SliceRangeX[2];
201 int SliceRangeY[2];
202 int SliceRangeZ[2];
203
205
207
209
210 void ComputeInputUpdateExtent(int inExt[6], int outExt[6]);
211
217
218private:
220 void operator=(const vtkImageThresholdConnectivity&) VTK_DELETE_FUNCTION;
221};
222
223#endif
Generic algorithm superclass for image algs.
topologically and geometrically regular array of data
Definition: vtkImageData.h:46
efficient description of an image stencil
virtual void SetStencilData(vtkImageStencilData *stencil)
Specify a stencil that will be used to limit the flood fill to an arbitrarily-shaped region of the im...
void SetOutValue(double val)
If ReplaceOut is set, outside the fill will be replaced by this value.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Subclasses can reimplement this method to translate the update extent requests from each output port ...
void SetSeedPoints(vtkPoints *points)
Set the seeds.
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
void ComputeInputUpdateExtent(int inExt[6], int outExt[6])
void ThresholdByLower(double thresh)
Values less than or equal to this threshold will be filled.
void SetInValue(double val)
If ReplaceIn is set, the filled region will be replaced by this value.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called in response to a REQUEST_DATA request from the executive.
void ThresholdBetween(double lower, double upper)
Values within this range will be filled, where the range inludes values that are exactly equal to the...
vtkImageStencilData * GetStencil()
vtkMTimeType GetMTime()
Override the MTime to account for the seed points.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void ThresholdByUpper(double thresh)
Values greater than or equal to this threshold will be filled.
static vtkImageThresholdConnectivity * New()
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
represent and manipulate 3D points
Definition: vtkPoints.h:40
@ points
Definition: vtkX3D.h:446
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248