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

Graphics/vtkCursor3D.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCursor3D.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 =========================================================================*/
00032 #ifndef __vtkCursor3D_h
00033 #define __vtkCursor3D_h
00034 
00035 #include "vtkPolyDataSource.h"
00036 
00037 class VTK_GRAPHICS_EXPORT vtkCursor3D : public vtkPolyDataSource 
00038 {
00039 public:
00040   vtkTypeRevisionMacro(vtkCursor3D,vtkPolyDataSource);
00041   void PrintSelf(ostream& os, vtkIndent indent);
00042 
00045   static vtkCursor3D *New();
00046 
00048 
00049   void SetModelBounds(double xmin, double xmax, double ymin, double ymax, 
00050                       double zmin, double zmax);
00051   void SetModelBounds(double bounds[6]);
00052   vtkGetVectorMacro(ModelBounds,double,6);
00054 
00056 
00061   void SetFocalPoint(double x[3]);
00062   void SetFocalPoint(double x, double y, double z)
00063     {
00064       double xyz[3];
00065       xyz[0] = x; xyz[1] = y; xyz[2] = z;
00066       this->SetFocalPoint(xyz);
00067     }
00068   vtkGetVectorMacro(FocalPoint,double,3);
00070 
00072 
00073   vtkSetMacro(Outline,int);
00074   vtkGetMacro(Outline,int);
00075   vtkBooleanMacro(Outline,int);
00077 
00079 
00080   vtkSetMacro(Axes,int);
00081   vtkGetMacro(Axes,int);
00082   vtkBooleanMacro(Axes,int);
00084 
00086 
00087   vtkSetMacro(XShadows,int);
00088   vtkGetMacro(XShadows,int);
00089   vtkBooleanMacro(XShadows,int);
00091 
00093 
00094   vtkSetMacro(YShadows,int);
00095   vtkGetMacro(YShadows,int);
00096   vtkBooleanMacro(YShadows,int);
00098 
00100 
00101   vtkSetMacro(ZShadows,int);
00102   vtkGetMacro(ZShadows,int);
00103   vtkBooleanMacro(ZShadows,int);
00105 
00107 
00110   vtkSetMacro(TranslationMode,int);
00111   vtkGetMacro(TranslationMode,int);
00112   vtkBooleanMacro(TranslationMode,int);
00114 
00116 
00119   vtkSetMacro(Wrap,int);
00120   vtkGetMacro(Wrap,int);
00121   vtkBooleanMacro(Wrap,int);
00123 
00125   vtkPolyData *GetFocus() {return (vtkPolyData *)this->Focus;};
00126 
00128 
00129   void AllOn();
00130   void AllOff();
00132 
00133 protected:
00134   vtkCursor3D();
00135   ~vtkCursor3D();
00136 
00137   void Execute();
00138 
00139   vtkPolyData *Focus;
00140   double ModelBounds[6];
00141   double FocalPoint[3];
00142   int Outline;
00143   int Axes;
00144   int XShadows;
00145   int YShadows;
00146   int ZShadows;
00147   int TranslationMode;
00148   int Wrap;
00149   
00150 private:
00151   vtkCursor3D(const vtkCursor3D&);  // Not implemented.
00152   void operator=(const vtkCursor3D&);  // Not implemented.
00153 };
00154 
00155 #endif
00156 
00157