00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00031 #ifndef __vtkFrustumSource_h
00032 #define __vtkFrustumSource_h
00033
00034 #include "vtkPolyDataAlgorithm.h"
00035 class vtkPlanes;
00036
00037 class VTK_GRAPHICS_EXPORT vtkFrustumSource : public vtkPolyDataAlgorithm
00038 {
00039 public:
00040 static vtkFrustumSource *New();
00041 vtkTypeRevisionMacro(vtkFrustumSource,vtkPolyDataAlgorithm);
00042 void PrintSelf(ostream& os, vtkIndent indent);
00043
00045
00050 vtkGetObjectMacro(Planes,vtkPlanes);
00052
00054 virtual void SetPlanes(vtkPlanes *planes);
00055
00057
00058 vtkGetMacro(ShowLines,bool);
00059 vtkSetMacro(ShowLines,bool);
00060 vtkBooleanMacro(ShowLines,bool);
00062
00064
00066 vtkGetMacro(LinesLength,double);
00067 vtkSetMacro(LinesLength,double);
00069
00070 protected:
00072 vtkFrustumSource();
00073
00074 virtual ~vtkFrustumSource();
00075
00076 virtual int RequestData(vtkInformation *request,
00077 vtkInformationVector **inputVector,
00078 vtkInformationVector *outputVector);
00079
00081
00082 void ComputePoint(int planes[3],
00083 double *pt);
00085
00086 vtkPlanes *Planes;
00087 bool ShowLines;
00088 double LinesLength;
00089
00090 private:
00091 vtkFrustumSource(const vtkFrustumSource&);
00092 void operator=(const vtkFrustumSource&);
00093 };
00094
00095 #endif