dox/Common/vtkLocator.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00056 #ifndef __vtkLocator_h
00057 #define __vtkLocator_h
00058
00059 #include "vtkObject.h"
00060
00061 class vtkDataSet;
00062 class vtkPolyData;
00063
00064 class VTK_COMMON_EXPORT vtkLocator : public vtkObject
00065 {
00066 public:
00067 vtkTypeRevisionMacro(vtkLocator,vtkObject);
00068 void PrintSelf(ostream& os, vtkIndent indent);
00069
00071
00072 virtual void SetDataSet(vtkDataSet*);
00073 vtkGetObjectMacro(DataSet,vtkDataSet);
00075
00077
00079 vtkSetClampMacro(MaxLevel,int,0,VTK_LARGE_INTEGER);
00080 vtkGetMacro(MaxLevel,int);
00082
00084
00087 vtkGetMacro(Level,int);
00089
00091
00095 vtkSetMacro(Automatic,int);
00096 vtkGetMacro(Automatic,int);
00097 vtkBooleanMacro(Automatic,int);
00099
00101
00103 vtkSetClampMacro(Tolerance,float,0.0f,VTK_LARGE_FLOAT);
00104 vtkGetMacro(Tolerance,float);
00106
00108
00112 vtkSetMacro(RetainCellLists,int);
00113 vtkGetMacro(RetainCellLists,int);
00114 vtkBooleanMacro(RetainCellLists,int);
00116
00119 virtual void Update();
00120
00122 virtual void Initialize();
00123
00125 virtual void BuildLocator() = 0;
00126
00128 virtual void FreeSearchStructure() = 0;
00129
00134 virtual void GenerateRepresentation(int level, vtkPolyData *pd) = 0;
00135
00137
00138 vtkGetMacro(BuildTime, unsigned long);
00140
00141 protected:
00142 vtkLocator();
00143 ~vtkLocator();
00144
00145 vtkDataSet *DataSet;
00146 int Automatic;
00147 float Tolerance;
00148 int MaxLevel;
00149 int Level;
00150 int RetainCellLists;
00151
00152 vtkTimeStamp BuildTime;
00153
00154 private:
00155 vtkLocator(const vtkLocator&);
00156 void operator=(const vtkLocator&);
00157 };
00158
00159 #endif
00160
00161