VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkCubeSource.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 =========================================================================*/ 00026 #ifndef __vtkCubeSource_h 00027 #define __vtkCubeSource_h 00028 00029 #include "vtkPolyDataAlgorithm.h" 00030 00031 class VTK_GRAPHICS_EXPORT vtkCubeSource : public vtkPolyDataAlgorithm 00032 { 00033 public: 00034 static vtkCubeSource *New(); 00035 vtkTypeRevisionMacro(vtkCubeSource,vtkPolyDataAlgorithm); 00036 void PrintSelf(ostream& os, vtkIndent indent); 00037 00039 00040 vtkSetClampMacro(XLength,double,0.0,VTK_DOUBLE_MAX); 00041 vtkGetMacro(XLength,double); 00043 00045 00046 vtkSetClampMacro(YLength,double,0.0,VTK_DOUBLE_MAX); 00047 vtkGetMacro(YLength,double); 00049 00051 00052 vtkSetClampMacro(ZLength,double,0.0,VTK_DOUBLE_MAX); 00053 vtkGetMacro(ZLength,double); 00055 00057 00058 vtkSetVector3Macro(Center,double); 00059 vtkGetVectorMacro(Center,double,3); 00061 00063 00065 void SetBounds(double xMin, double xMax, 00066 double yMin, double yMax, 00067 double zMin, double zMax); 00068 void SetBounds(double bounds[6]); 00070 00071 protected: 00072 vtkCubeSource(double xL=1.0, double yL=1.0, double zL=1.0); 00073 ~vtkCubeSource() {}; 00074 00075 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00076 double XLength; 00077 double YLength; 00078 double ZLength; 00079 double Center[3]; 00080 private: 00081 vtkCubeSource(const vtkCubeSource&); // Not implemented. 00082 void operator=(const vtkCubeSource&); // Not implemented. 00083 }; 00084 00085 #endif