00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00047 #ifndef __vtkSelectVisiblePoints_h
00048 #define __vtkSelectVisiblePoints_h
00049
00050 #include "vtkPolyDataAlgorithm.h"
00051
00052 class vtkRenderer;
00053
00054 class VTK_RENDERING_EXPORT vtkSelectVisiblePoints : public vtkPolyDataAlgorithm
00055 {
00056 public:
00057 vtkTypeRevisionMacro(vtkSelectVisiblePoints,vtkPolyDataAlgorithm);
00058 void PrintSelf(ostream& os, vtkIndent indent);
00059
00062 static vtkSelectVisiblePoints *New();
00063
00065
00067 void SetRenderer(vtkRenderer* ren)
00068 {
00069 if (this->Renderer != ren)
00070 {
00071 this->Renderer = ren;
00072 this->Modified();
00073 }
00074 }
00075 vtkRenderer* GetRenderer() { return this->Renderer; }
00077
00079
00081 vtkSetMacro(SelectionWindow,int);
00082 vtkGetMacro(SelectionWindow,int);
00083 vtkBooleanMacro(SelectionWindow,int);
00085
00087
00089 vtkSetVector4Macro(Selection,int);
00090 vtkGetVectorMacro(Selection,int,4);
00092
00094
00096 vtkSetMacro(SelectInvisible,int);
00097 vtkGetMacro(SelectInvisible,int);
00098 vtkBooleanMacro(SelectInvisible,int);
00100
00102
00105 vtkSetClampMacro(Tolerance,double,0.0,VTK_DOUBLE_MAX);
00106 vtkGetMacro(Tolerance,double);
00108
00110 unsigned long GetMTime();
00111
00112 protected:
00113 vtkSelectVisiblePoints();
00114 ~vtkSelectVisiblePoints();
00115
00116 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00117 virtual int FillInputPortInformation(int port, vtkInformation *info);
00118
00119 vtkRenderer *Renderer;
00120
00121 int SelectionWindow;
00122 int Selection[4];
00123 int SelectInvisible;
00124 double Tolerance;
00125
00126 private:
00127 vtkSelectVisiblePoints(const vtkSelectVisiblePoints&);
00128 void operator=(const vtkSelectVisiblePoints&);
00129 };
00130
00131 #endif