00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00079 #ifndef __vtkPlaneSource_h
00080 #define __vtkPlaneSource_h
00081
00082 #include "vtkPolyDataSource.h"
00083
00084 class VTK_GRAPHICS_EXPORT vtkPlaneSource : public vtkPolyDataSource
00085 {
00086 public:
00087 void PrintSelf(ostream& os, vtkIndent indent);
00088 vtkTypeMacro(vtkPlaneSource,vtkPolyDataSource);
00089
00092 static vtkPlaneSource *New();
00093
00095
00096 vtkSetMacro(XResolution,int);
00097 vtkGetMacro(XResolution,int);
00099
00101
00102 vtkSetMacro(YResolution,int);
00103 vtkGetMacro(YResolution,int);
00105
00107
00108 void SetResolution(const int xR, const int yR);
00109 void GetResolution(int& xR,int& yR) {
00110 xR=this->XResolution; yR=this->YResolution;};
00112
00114
00115 vtkSetVector3Macro(Origin,float);
00116 vtkGetVectorMacro(Origin,float,3);
00118
00120
00121 void SetPoint1(float x, float y, float z);
00122 void SetPoint1(float pnt[3]);
00123 vtkGetVectorMacro(Point1,float,3);
00125
00127
00128 void SetPoint2(float x, float y, float z);
00129 void SetPoint2(float pnt[3]);
00130 vtkGetVectorMacro(Point2,float,3);
00132
00134
00137 void SetCenter(float x, float y, float z);
00138 void SetCenter(float center[3]);
00139 vtkGetVectorMacro(Center,float,3);
00141
00143
00146 void SetNormal(float nx, float ny, float nz);
00147 void SetNormal(float n[3]);
00148 vtkGetVectorMacro(Normal,float,3);
00150
00153 void Push(float distance);
00154
00155 protected:
00156 vtkPlaneSource();
00157 ~vtkPlaneSource() {};
00158
00159 void Execute();
00160
00161 int XResolution;
00162 int YResolution;
00163 float Origin[3];
00164 float Point1[3];
00165 float Point2[3];
00166 float Normal[3];
00167 float Center[3];
00168
00169 int UpdatePlane(float v1[3], float v2[3]);
00170 private:
00171 vtkPlaneSource(const vtkPlaneSource&);
00172 void operator=(const vtkPlaneSource&);
00173 };
00174
00175 #endif
00176
00177