Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Graphics/vtkPlaneSource.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkPlaneSource.h,v $ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00052 #ifndef __vtkPlaneSource_h 00053 #define __vtkPlaneSource_h 00054 00055 #include "vtkPolyDataSource.h" 00056 00057 class VTK_GRAPHICS_EXPORT vtkPlaneSource : public vtkPolyDataSource 00058 { 00059 public: 00060 void PrintSelf(ostream& os, vtkIndent indent); 00061 vtkTypeRevisionMacro(vtkPlaneSource,vtkPolyDataSource); 00062 00065 static vtkPlaneSource *New(); 00066 00068 00069 vtkSetMacro(XResolution,int); 00070 vtkGetMacro(XResolution,int); 00072 00074 00075 vtkSetMacro(YResolution,int); 00076 vtkGetMacro(YResolution,int); 00078 00080 00081 void SetResolution(const int xR, const int yR); 00082 void GetResolution(int& xR,int& yR) { 00083 xR=this->XResolution; yR=this->YResolution;}; 00085 00087 00088 vtkSetVector3Macro(Origin,double); 00089 vtkGetVectorMacro(Origin,double,3); 00091 00093 00094 void SetPoint1(double x, double y, double z); 00095 void SetPoint1(double pnt[3]); 00096 vtkGetVectorMacro(Point1,double,3); 00098 00100 00101 void SetPoint2(double x, double y, double z); 00102 void SetPoint2(double pnt[3]); 00103 vtkGetVectorMacro(Point2,double,3); 00105 00107 00110 void SetCenter(double x, double y, double z); 00111 void SetCenter(double center[3]); 00112 vtkGetVectorMacro(Center,double,3); 00114 00116 00119 void SetNormal(double nx, double ny, double nz); 00120 void SetNormal(double n[3]); 00121 vtkGetVectorMacro(Normal,double,3); 00123 00126 void Push(double distance); 00127 00128 protected: 00129 vtkPlaneSource(); 00130 ~vtkPlaneSource() {}; 00131 00132 void Execute(); 00133 00134 int XResolution; 00135 int YResolution; 00136 double Origin[3]; 00137 double Point1[3]; 00138 double Point2[3]; 00139 double Normal[3]; 00140 double Center[3]; 00141 00142 int UpdatePlane(double v1[3], double v2[3]); 00143 private: 00144 vtkPlaneSource(const vtkPlaneSource&); // Not implemented. 00145 void operator=(const vtkPlaneSource&); // Not implemented. 00146 }; 00147 00148 #endif 00149 00150