Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Graphics/vtkClipDataSet.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkClipDataSet.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00066 #ifndef __vtkClipDataSet_h 00067 #define __vtkClipDataSet_h 00068 00069 #include "vtkDataSetToUnstructuredGridFilter.h" 00070 00071 class vtkImplicitFunction; 00072 00073 class vtkPointLocator; 00074 00075 class VTK_GRAPHICS_EXPORT vtkClipDataSet : public vtkDataSetToUnstructuredGridFilter 00076 { 00077 public: 00078 vtkTypeRevisionMacro(vtkClipDataSet,vtkDataSetToUnstructuredGridFilter); 00079 void PrintSelf(ostream& os, vtkIndent indent); 00080 00083 static vtkClipDataSet *New(); 00084 00086 00089 vtkSetMacro(Value,float); 00090 vtkGetMacro(Value,float); 00092 00094 00099 vtkSetMacro(InsideOut,int); 00100 vtkGetMacro(InsideOut,int); 00101 vtkBooleanMacro(InsideOut,int); 00103 00105 00108 virtual void SetClipFunction(vtkImplicitFunction*); 00109 vtkGetObjectMacro(ClipFunction,vtkImplicitFunction); 00111 00113 00117 vtkSetMacro(GenerateClipScalars,int); 00118 vtkGetMacro(GenerateClipScalars,int); 00119 vtkBooleanMacro(GenerateClipScalars,int); 00121 00123 00125 vtkSetMacro(GenerateClippedOutput,int); 00126 vtkGetMacro(GenerateClippedOutput,int); 00127 vtkBooleanMacro(GenerateClippedOutput,int); 00129 00131 00135 vtkSetClampMacro(MergeTolerance,float,0.0001,0.25); 00136 vtkGetMacro(MergeTolerance,float); 00138 00140 00141 vtkUnstructuredGrid *GetClippedOutput(); 00142 virtual int GetNumberOfOutputs(); 00144 00146 00148 void SetLocator(vtkPointLocator *locator); 00149 vtkGetObjectMacro(Locator,vtkPointLocator); 00151 00154 void CreateDefaultLocator(); 00155 00157 unsigned long GetMTime(); 00158 00159 protected: 00160 vtkClipDataSet(vtkImplicitFunction *cf=NULL); 00161 ~vtkClipDataSet(); 00162 00163 void Execute(); 00164 vtkImplicitFunction *ClipFunction; 00165 00166 vtkPointLocator *Locator; 00167 int InsideOut; 00168 float Value; 00169 int GenerateClipScalars; 00170 00171 int GenerateClippedOutput; 00172 float MergeTolerance; 00173 00174 char *InputScalarsSelection; 00175 vtkSetStringMacro(InputScalarsSelection); 00176 00177 //helper functions 00178 void ClipVolume(); 00179 00180 private: 00181 vtkClipDataSet(const vtkClipDataSet&); // Not implemented. 00182 void operator=(const vtkClipDataSet&); // Not implemented. 00183 }; 00184 00185 #endif