VTK
vtkGenericClip.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGenericClip.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 =========================================================================*/
61 #ifndef vtkGenericClip_h
62 #define vtkGenericClip_h
63 
64 #include "vtkFiltersGenericModule.h" // For export macro
66 
68 
69 class vtkPointData;
70 class vtkCellData;
72 
73 class VTKFILTERSGENERIC_EXPORT vtkGenericClip : public vtkUnstructuredGridAlgorithm
74 {
75 public:
77  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
78 
83  static vtkGenericClip *New();
84 
86 
91  vtkSetMacro(Value,double);
92  vtkGetMacro(Value,double);
94 
96 
104  vtkSetMacro(InsideOut,int);
105  vtkGetMacro(InsideOut,int);
106  vtkBooleanMacro(InsideOut,int);
108 
110 
115  virtual void SetClipFunction(vtkImplicitFunction*);
116  vtkGetObjectMacro(ClipFunction,vtkImplicitFunction);
118 
120 
126  vtkSetMacro(GenerateClipScalars,int);
127  vtkGetMacro(GenerateClipScalars,int);
128  vtkBooleanMacro(GenerateClipScalars,int);
130 
132 
136  vtkSetMacro(GenerateClippedOutput,int);
137  vtkGetMacro(GenerateClippedOutput,int);
138  vtkBooleanMacro(GenerateClippedOutput,int);
140 
142 
148  vtkSetClampMacro(MergeTolerance,double,0.0001,0.25);
149  vtkGetMacro(MergeTolerance,double);
151 
153 
156  vtkUnstructuredGrid *GetClippedOutput();
157  virtual int GetNumberOfOutputs();
159 
161 
165  void SetLocator(vtkIncrementalPointLocator *locator);
166  vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
168 
173  void CreateDefaultLocator();
174 
178  vtkMTimeType GetMTime() VTK_OVERRIDE;
179 
181 
185  vtkGetStringMacro(InputScalarsSelection);
186  void SelectInputScalars(const char *fieldName)
187  {this->SetInputScalarsSelection(fieldName);}
189 
190 protected:
192  ~vtkGenericClip() VTK_OVERRIDE;
193 
194  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
195  int FillInputPortInformation(int, vtkInformation*) VTK_OVERRIDE;
196 
197  vtkImplicitFunction *ClipFunction;
198 
200  int InsideOut;
201  double Value;
202  int GenerateClipScalars;
203 
204  int GenerateClippedOutput;
205  double MergeTolerance;
206 
207  char *InputScalarsSelection;
208  vtkSetStringMacro(InputScalarsSelection);
209 
210  // Used internal by vtkGenericAdaptorCell::Clip()
211  vtkPointData *InternalPD;
212  vtkPointData *SecondaryPD;
213  vtkCellData *SecondaryCD;
214 
215 private:
216  vtkGenericClip(const vtkGenericClip&) VTK_DELETE_FUNCTION;
217  void operator=(const vtkGenericClip&) VTK_DELETE_FUNCTION;
218 };
219 
220 #endif
abstract interface for implicit functions
represent and manipulate point attribute data
Definition: vtkPointData.h:31
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:300
clip any dataset with an implicit function or scalar data
represent and manipulate cell attribute data
Definition: vtkCellData.h:32
static vtkUnstructuredGridAlgorithm * New()
Abstract class in support of both point location and point insertion.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:33
dataset represents arbitrary combinations of all possible cell types
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
Superclass for algorithms that produce only unstructured grid as output.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.