Common/vtkPlanes.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00043 #ifndef __vtkPlanes_h
00044 #define __vtkPlanes_h
00045
00046 #include "vtkImplicitFunction.h"
00047
00048 class vtkPlane;
00049 class vtkPoints;
00050 class vtkDataArray;
00051
00052 class VTK_COMMON_EXPORT vtkPlanes : public vtkImplicitFunction
00053 {
00054 public:
00055 static vtkPlanes *New();
00056 vtkTypeRevisionMacro(vtkPlanes,vtkImplicitFunction);
00057 void PrintSelf(ostream& os, vtkIndent indent);
00058
00060
00061 double EvaluateFunction(double x[3]);
00062 double EvaluateFunction(double x, double y, double z)
00063 {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
00065
00067 void EvaluateGradient(double x[3], double n[3]);
00068
00070
00072 virtual void SetPoints(vtkPoints*);
00073 vtkGetObjectMacro(Points,vtkPoints);
00075
00077
00079 void SetNormals(vtkDataArray* normals);
00080 vtkGetObjectMacro(Normals,vtkDataArray);
00082
00085 void SetFrustumPlanes(double planes[24]);
00086
00088
00092 void SetBounds(double bounds[6]);
00093 void SetBounds(double xmin, double xmax, double ymin, double ymax,
00094 double zmin, double zmax);
00096
00098 int GetNumberOfPlanes();
00099
00103 vtkPlane *GetPlane(int i);
00104
00105 protected:
00106 vtkPlanes();
00107 ~vtkPlanes();
00108
00109 vtkPoints *Points;
00110 vtkDataArray *Normals;
00111 vtkPlane *Plane;
00112
00113 private:
00114 double Planes[24];
00115 double Bounds[6];
00116
00117 private:
00118 vtkPlanes(const vtkPlanes&);
00119 void operator=(const vtkPlanes&);
00120 };
00121
00122 #endif
00123
00124