00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00050 #ifndef __vtkSelectVisiblePoints_h
00051 #define __vtkSelectVisiblePoints_h
00052
00053 #include "vtkPolyDataAlgorithm.h"
00054
00055 class vtkRenderer;
00056
00057 class VTK_RENDERING_EXPORT vtkSelectVisiblePoints : public vtkPolyDataAlgorithm
00058 {
00059 public:
00060 vtkTypeRevisionMacro(vtkSelectVisiblePoints,vtkPolyDataAlgorithm);
00061 void PrintSelf(ostream& os, vtkIndent indent);
00062
00065 static vtkSelectVisiblePoints *New();
00066
00068
00070 void SetRenderer(vtkRenderer* ren)
00071 {
00072 if (this->Renderer != ren)
00073 {
00074 this->Renderer = ren;
00075 this->Modified();
00076 }
00077 }
00078 vtkRenderer* GetRenderer() { return this->Renderer; }
00080
00082
00084 vtkSetMacro(SelectionWindow,int);
00085 vtkGetMacro(SelectionWindow,int);
00086 vtkBooleanMacro(SelectionWindow,int);
00088
00090
00092 vtkSetVector4Macro(Selection,int);
00093 vtkGetVectorMacro(Selection,int,4);
00095
00097
00099 vtkSetMacro(SelectInvisible,int);
00100 vtkGetMacro(SelectInvisible,int);
00101 vtkBooleanMacro(SelectInvisible,int);
00103
00105
00108 vtkSetClampMacro(Tolerance,double,0.0,VTK_DOUBLE_MAX);
00109 vtkGetMacro(Tolerance,double);
00111
00113 unsigned long GetMTime();
00114
00115 protected:
00116 vtkSelectVisiblePoints();
00117 ~vtkSelectVisiblePoints();
00118
00119 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00120 virtual int FillInputPortInformation(int port, vtkInformation *info);
00121
00122 vtkRenderer *Renderer;
00123
00124 int SelectionWindow;
00125 int Selection[4];
00126 int SelectInvisible;
00127 double Tolerance;
00128
00129 private:
00130 vtkSelectVisiblePoints(const vtkSelectVisiblePoints&);
00131 void operator=(const vtkSelectVisiblePoints&);
00132 };
00133
00134 #endif