VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkCubeSource.h 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 =========================================================================*/ 00029 #ifndef vtkCubeSource_h 00030 #define vtkCubeSource_h 00031 00032 #include "vtkFiltersSourcesModule.h" // For export macro 00033 #include "vtkPolyDataAlgorithm.h" 00034 00035 class VTKFILTERSSOURCES_EXPORT vtkCubeSource : public vtkPolyDataAlgorithm 00036 { 00037 public: 00038 static vtkCubeSource *New(); 00039 vtkTypeMacro(vtkCubeSource,vtkPolyDataAlgorithm); 00040 void PrintSelf(ostream& os, vtkIndent indent); 00041 00043 00044 vtkSetClampMacro(XLength,double,0.0,VTK_DOUBLE_MAX); 00045 vtkGetMacro(XLength,double); 00047 00049 00050 vtkSetClampMacro(YLength,double,0.0,VTK_DOUBLE_MAX); 00051 vtkGetMacro(YLength,double); 00053 00055 00056 vtkSetClampMacro(ZLength,double,0.0,VTK_DOUBLE_MAX); 00057 vtkGetMacro(ZLength,double); 00059 00061 00062 vtkSetVector3Macro(Center,double); 00063 vtkGetVectorMacro(Center,double,3); 00065 00067 00069 void SetBounds(double xMin, double xMax, 00070 double yMin, double yMax, 00071 double zMin, double zMax); 00072 void SetBounds(const double bounds[6]); 00074 00076 00080 vtkSetMacro(OutputPointsPrecision,int); 00081 vtkGetMacro(OutputPointsPrecision,int); 00083 00084 protected: 00085 vtkCubeSource(double xL=1.0, double yL=1.0, double zL=1.0); 00086 ~vtkCubeSource() {} 00087 00088 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00089 double XLength; 00090 double YLength; 00091 double ZLength; 00092 double Center[3]; 00093 int OutputPointsPrecision; 00094 private: 00095 vtkCubeSource(const vtkCubeSource&); // Not implemented. 00096 void operator=(const vtkCubeSource&); // Not implemented. 00097 }; 00098 00099 #endif