VTK
vtkTableBasedClipDataSet.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkTableBasedClipDataSet.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 =========================================================================*/
15 
16 
17 /*****************************************************************************
18 *
19 * Copyright (c) 2000 - 2009, Lawrence Livermore National Security, LLC
20 * Produced at the Lawrence Livermore National Laboratory
21 * LLNL-CODE-400124
22 * All rights reserved.
23 *
24 * This file was adapted from the VisIt clipper (vtkVisItClipper). For details,
25 * see https://visit.llnl.gov/. The full copyright notice is contained in the
26 * file COPYRIGHT located at the root of the VisIt distribution or at
27 * http://www.llnl.gov/visit/copyright.html.
28 *
29 *****************************************************************************/
30 
31 
95 #ifndef vtkTableBasedClipDataSet_h
96 #define vtkTableBasedClipDataSet_h
97 
98 #include "vtkFiltersGeneralModule.h" // For export macro
100 
101 class vtkCallbackCommand;
102 class vtkImplicitFunction;
104 
106 {
107 public:
109  void PrintSelf( ostream & os, vtkIndent indent );
110 
115 
118  unsigned long GetMTime();
119 
121 
127  vtkSetMacro( InsideOut, int );
128  vtkGetMacro( InsideOut, int );
129  vtkBooleanMacro( InsideOut, int );
131 
133 
137  vtkSetMacro( Value, double );
138  vtkGetMacro( Value, double );
140 
142 
146  vtkSetMacro( UseValueAsOffset, bool );
147  vtkGetMacro( UseValueAsOffset, bool );
148  vtkBooleanMacro( UseValueAsOffset, bool );
150 
152 
158 
160 
164  vtkSetMacro( GenerateClipScalars, int );
165  vtkGetMacro( GenerateClipScalars, int );
166  vtkBooleanMacro( GenerateClipScalars, int );
168 
170 
180 
182 
186  vtkSetClampMacro( MergeTolerance, double, 0.0001, 0.25 );
187  vtkGetMacro( MergeTolerance, double );
189 
193 
195 
197  vtkSetMacro( GenerateClippedOutput, int );
198  vtkGetMacro( GenerateClippedOutput, int );
199  vtkBooleanMacro( GenerateClippedOutput, int );
201 
204 
206 
209  vtkSetClampMacro(OutputPointsPrecision, int, SINGLE_PRECISION, DEFAULT_PRECISION);
210  vtkGetMacro(OutputPointsPrecision, int);
212 
213 protected:
216 
217  virtual int RequestData( vtkInformation *,
220 
222 
225  void ClipDataSet( vtkDataSet * pDataSet,
226  vtkDataArray * clipAray, vtkUnstructuredGrid * unstruct );
228 
230 
232  void ClipImageData( vtkDataSet * inputGrd, vtkDataArray * clipAray,
233  double isoValue, vtkUnstructuredGrid * outputUG );
235 
237 
242  void ClipPolyData( vtkDataSet * inputGrd, vtkDataArray * clipAray,
243  double isoValue, vtkUnstructuredGrid * outputUG );
245 
247 
252  void ClipRectilinearGridData( vtkDataSet * inputGrd, vtkDataArray * clipAray,
253  double isoValue, vtkUnstructuredGrid * outputUG );
255 
257 
262  void ClipStructuredGridData( vtkDataSet * inputGrd, vtkDataArray * clipAray,
263  double isoValue, vtkUnstructuredGrid * outputUG );
265 
267 
272  void ClipUnstructuredGridData( vtkDataSet * inputGrd, vtkDataArray * clipAray,
273  double isoValue, vtkUnstructuredGrid * outputUG );
275 
276 
278 
279  static void InternalProgressCallbackFunction( vtkObject *, unsigned long,
280  void * clientdata, void * );
282 
285 
286 
291  double Value;
296 
298 
299 private:
300  vtkTableBasedClipDataSet( const vtkTableBasedClipDataSet &); // Not implemented.
301  void operator= ( const vtkTableBasedClipDataSet & ); // Not implemented.
302 };
303 
304 #endif
vtkTableBasedClipDataSet::InsideOut
int InsideOut
Definition: vtkTableBasedClipDataSet.h:287
vtkTableBasedClipDataSet::New
static vtkTableBasedClipDataSet * New()
vtkGetObjectMacro
#define vtkGetObjectMacro(name, type)
Definition: vtkSetGet.h:232
vtkTableBasedClipDataSet::GenerateClipScalars
int GenerateClipScalars
Definition: vtkTableBasedClipDataSet.h:288
vtkTableBasedClipDataSet::GetClippedOutput
vtkUnstructuredGrid * GetClippedOutput()
vtkTableBasedClipDataSet::InternalProgressCallbackFunction
static void InternalProgressCallbackFunction(vtkObject *, unsigned long, void *clientdata, void *)
vtkAlgorithm
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:62
vtkTableBasedClipDataSet::ClipPolyData
void ClipPolyData(vtkDataSet *inputGrd, vtkDataArray *clipAray, double isoValue, vtkUnstructuredGrid *outputUG)
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkTableBasedClipDataSet::ClipDataSet
void ClipDataSet(vtkDataSet *pDataSet, vtkDataArray *clipAray, vtkUnstructuredGrid *unstruct)
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkTableBasedClipDataSet::Value
double Value
Definition: vtkTableBasedClipDataSet.h:291
vtkDataArray
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:55
vtkTableBasedClipDataSet::OutputPointsPrecision
int OutputPointsPrecision
Definition: vtkTableBasedClipDataSet.h:297
vtkTableBasedClipDataSet::InternalProgressObserver
vtkCallbackCommand * InternalProgressObserver
Definition: vtkTableBasedClipDataSet.h:293
vtkTableBasedClipDataSet::InternalProgressCallback
void InternalProgressCallback(vtkAlgorithm *algorithm)
vtkImplicitFunction
abstract interface for implicit functions
Definition: vtkImplicitFunction.h:58
vtkTableBasedClipDataSet::ClipRectilinearGridData
void ClipRectilinearGridData(vtkDataSet *inputGrd, vtkDataArray *clipAray, double isoValue, vtkUnstructuredGrid *outputUG)
vtkTableBasedClipDataSet::ClipFunction
vtkImplicitFunction * ClipFunction
Definition: vtkTableBasedClipDataSet.h:294
vtkX3D::port
@ port
Definition: vtkX3D.h:447
vtkSetClampMacro
#define vtkSetClampMacro(name, type, min, max)
Definition: vtkSetGet.h:143
vtkTableBasedClipDataSet::SetClipFunction
virtual void SetClipFunction(vtkImplicitFunction *)
vtkTableBasedClipDataSet::RequestData
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkTableBasedClipDataSet::FillInputPortInformation
virtual int FillInputPortInformation(int port, vtkInformation *info)
vtkTableBasedClipDataSet::GetMTime
unsigned long GetMTime()
vtkTableBasedClipDataSet::~vtkTableBasedClipDataSet
~vtkTableBasedClipDataSet()
vtkFiltersGeneralModule.h
vtkTableBasedClipDataSet::ClipStructuredGridData
void ClipStructuredGridData(vtkDataSet *inputGrd, vtkDataArray *clipAray, double isoValue, vtkUnstructuredGrid *outputUG)
vtkTableBasedClipDataSet::vtkTableBasedClipDataSet
vtkTableBasedClipDataSet(vtkImplicitFunction *cf=NULL)
vtkTableBasedClipDataSet::SetLocator
void SetLocator(vtkIncrementalPointLocator *locator)
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkTableBasedClipDataSet::CreateDefaultLocator
void CreateDefaultLocator()
vtkIncrementalPointLocator
Abstract class in support of both point location and point insertion.
Definition: vtkIncrementalPointLocator.h:54
vtkTableBasedClipDataSet::Locator
vtkIncrementalPointLocator * Locator
Definition: vtkTableBasedClipDataSet.h:295
VTKFILTERSGENERAL_EXPORT
#define VTKFILTERSGENERAL_EXPORT
Definition: vtkFiltersGeneralModule.h:15
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkDataSet
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
vtkBooleanMacro
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkX3D::info
@ info
Definition: vtkX3D.h:376
vtkTableBasedClipDataSet
Clip any dataset with a user-specified implicit function or an input scalar point data array.
Definition: vtkTableBasedClipDataSet.h:106
vtkCallbackCommand
supports function callbacks
Definition: vtkCallbackCommand.h:50
vtkUnstructuredGridAlgorithm.h
vtkUnstructuredGridAlgorithm
Superclass for algorithms that produce only unstructured grid as output.
Definition: vtkUnstructuredGridAlgorithm.h:40
vtkUnstructuredGrid
dataset represents arbitrary combinations of all possible cell types
Definition: vtkUnstructuredGrid.h:82
vtkTableBasedClipDataSet::ClipImageData
void ClipImageData(vtkDataSet *inputGrd, vtkDataArray *clipAray, double isoValue, vtkUnstructuredGrid *outputUG)
vtkTableBasedClipDataSet::UseValueAsOffset
bool UseValueAsOffset
Definition: vtkTableBasedClipDataSet.h:290
vtkTableBasedClipDataSet::ClipUnstructuredGridData
void ClipUnstructuredGridData(vtkDataSet *inputGrd, vtkDataArray *clipAray, double isoValue, vtkUnstructuredGrid *outputUG)
vtkTableBasedClipDataSet::MergeTolerance
double MergeTolerance
Definition: vtkTableBasedClipDataSet.h:292
vtkTableBasedClipDataSet::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkTableBasedClipDataSet::GenerateClippedOutput
int GenerateClippedOutput
Definition: vtkTableBasedClipDataSet.h:289