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

vtkClipPolyData.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkClipPolyData.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00077 #ifndef __vtkClipPolyData_h
00078 #define __vtkClipPolyData_h
00079 
00080 #include "vtkPolyDataToPolyDataFilter.h"
00081 
00082 class vtkImplicitFunction;
00083 class vtkPointLocator;
00084 
00085 class VTK_GRAPHICS_EXPORT vtkClipPolyData : public vtkPolyDataToPolyDataFilter
00086 {
00087 public:
00088   vtkTypeRevisionMacro(vtkClipPolyData,vtkPolyDataToPolyDataFilter);
00089   void PrintSelf(ostream& os, vtkIndent indent);
00090 
00093   static vtkClipPolyData *New();
00094 
00096 
00099   vtkSetMacro(Value,double);
00100   vtkGetMacro(Value,double);
00102   
00104 
00109   vtkSetMacro(InsideOut,int);
00110   vtkGetMacro(InsideOut,int);
00111   vtkBooleanMacro(InsideOut,int);
00113 
00115 
00118   virtual void SetClipFunction(vtkImplicitFunction*);
00119   vtkGetObjectMacro(ClipFunction,vtkImplicitFunction);
00121 
00123 
00127   vtkSetMacro(GenerateClipScalars,int);
00128   vtkGetMacro(GenerateClipScalars,int);
00129   vtkBooleanMacro(GenerateClipScalars,int);
00131 
00133 
00135   vtkSetMacro(GenerateClippedOutput,int);
00136   vtkGetMacro(GenerateClippedOutput,int);
00137   vtkBooleanMacro(GenerateClippedOutput,int);
00139 
00141   vtkPolyData *GetClippedOutput();
00142 
00144 
00146   void SetLocator(vtkPointLocator *locator);
00147   vtkGetObjectMacro(Locator,vtkPointLocator);
00149 
00152   void CreateDefaultLocator();
00153 
00155   unsigned long GetMTime();
00156 
00157 protected:
00158   vtkClipPolyData(vtkImplicitFunction *cf=NULL);
00159   ~vtkClipPolyData();
00160 
00161   void Execute();
00162   vtkImplicitFunction *ClipFunction;
00163   
00164   vtkPointLocator *Locator;
00165   int InsideOut;
00166   double Value;
00167   int GenerateClipScalars;
00168 
00169   int GenerateClippedOutput;
00170 private:
00171   vtkClipPolyData(const vtkClipPolyData&);  // Not implemented.
00172   void operator=(const vtkClipPolyData&);  // Not implemented.
00173 };
00174 
00175 #endif