00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00030 #ifndef __vtkAxes_h
00031 #define __vtkAxes_h
00032 
00033 #include "vtkPolyDataAlgorithm.h"
00034 
00035 class VTK_GRAPHICS_EXPORT vtkAxes : public vtkPolyDataAlgorithm 
00036 {
00037 public:
00038   static vtkAxes *New();
00039 
00040   vtkTypeRevisionMacro(vtkAxes,vtkPolyDataAlgorithm);
00041   void PrintSelf(ostream& os, vtkIndent indent);
00042 
00044 
00045   vtkSetVector3Macro(Origin,double);
00046   vtkGetVectorMacro(Origin,double,3);
00048 
00050 
00051   vtkSetMacro(ScaleFactor,double);
00052   vtkGetMacro(ScaleFactor,double);
00054 
00056 
00057   vtkSetMacro(Symmetric,int);
00058   vtkGetMacro(Symmetric,int);
00059   vtkBooleanMacro(Symmetric,int);
00061 
00063 
00064   vtkSetMacro(ComputeNormals, int);
00065   vtkGetMacro(ComputeNormals, int);
00066   vtkBooleanMacro(ComputeNormals, int);
00068   
00069 protected:
00070   vtkAxes();
00071   ~vtkAxes() {};
00072 
00073   int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00074   
00075   int ComputeDivisionExtents(vtkDataObject *output, 
00076                              int idx, int numDivisions);
00077 
00078   double Origin[3];
00079   double ScaleFactor;
00080   
00081   int Symmetric;
00082   int ComputeNormals;
00083 private:
00084   vtkAxes(const vtkAxes&);  
00085   void operator=(const vtkAxes&);  
00086 };
00087 
00088 #endif
00089 
00090