VTK
vtkImageEuclideanDistance.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkImageEuclideanDistance.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=========================================================================*/
48#ifndef vtkImageEuclideanDistance_h
49#define vtkImageEuclideanDistance_h
50
51#include "vtkImagingGeneralModule.h" // For export macro
53
54#define VTK_EDT_SAITO_CACHED 0
55#define VTK_EDT_SAITO 1
56
57class VTKIMAGINGGENERAL_EXPORT vtkImageEuclideanDistance : public vtkImageDecomposeFilter
58{
59public:
62 void PrintSelf(ostream& os, vtkIndent indent);
63
65
71 vtkSetMacro(Initialize, int);
72 vtkGetMacro(Initialize, int);
73 vtkBooleanMacro(Initialize, int);
75
77
81 vtkSetMacro(ConsiderAnisotropy, int);
82 vtkGetMacro(ConsiderAnisotropy, int);
83 vtkBooleanMacro(ConsiderAnisotropy, int);
85
87
91 vtkSetMacro(MaximumDistance, double);
92 vtkGetMacro(MaximumDistance, double);
94
96
102 vtkSetMacro(Algorithm, int);
103 vtkGetMacro(Algorithm, int);
105 { this->SetAlgorithm(VTK_EDT_SAITO); }
107 { this->SetAlgorithm(VTK_EDT_SAITO_CACHED); }
109
113
114protected:
117
122
123 // Replaces "EnlargeOutputUpdateExtent"
124 virtual void AllocateOutputScalars(vtkImageData *outData,
125 int outExt[6],
126 vtkInformation* outInfo);
127
129 vtkInformation* out);
131 vtkInformation* out);
132
133private:
134 vtkImageEuclideanDistance(const vtkImageEuclideanDistance&) VTK_DELETE_FUNCTION;
135 void operator=(const vtkImageEuclideanDistance&) VTK_DELETE_FUNCTION;
136};
137
138#endif
139
140
141
142
143
144
145
146
147
148
topologically and geometrically regular array of data
Definition: vtkImageData.h:46
Filters that execute axes in series.
static vtkImageEuclideanDistance * New()
virtual void AllocateOutputScalars(vtkImageData *outData, int outExt[6], vtkInformation *outInfo)
virtual int IterativeRequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int IterativeRequestInformation(vtkInformation *in, vtkInformation *out)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual int IterativeRequestUpdateExtent(vtkInformation *in, vtkInformation *out)
a simple class to control print indentation
Definition: vtkIndent.h:40
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
#define VTK_EDT_SAITO
#define VTK_EDT_SAITO_CACHED
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.