VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkCursor3D.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 =========================================================================*/ 00032 #ifndef __vtkCursor3D_h 00033 #define __vtkCursor3D_h 00034 00035 #include "vtkFiltersGeneralModule.h" // For export macro 00036 #include "vtkPolyDataAlgorithm.h" 00037 00038 class VTKFILTERSGENERAL_EXPORT vtkCursor3D : public vtkPolyDataAlgorithm 00039 { 00040 public: 00041 vtkTypeMacro(vtkCursor3D,vtkPolyDataAlgorithm); 00042 void PrintSelf(ostream& os, vtkIndent indent); 00043 00046 static vtkCursor3D *New(); 00047 00049 00050 void SetModelBounds(double xmin, double xmax, double ymin, double ymax, 00051 double zmin, double zmax); 00052 void SetModelBounds(const double bounds[6]); 00053 vtkGetVectorMacro(ModelBounds,double,6); 00055 00057 00062 void SetFocalPoint(double x[3]); 00063 void SetFocalPoint(double x, double y, double z) 00064 { 00065 double xyz[3]; 00066 xyz[0] = x; xyz[1] = y; xyz[2] = z; 00067 this->SetFocalPoint(xyz); 00068 } 00069 vtkGetVectorMacro(FocalPoint,double,3); 00071 00073 00074 vtkSetMacro(Outline,int); 00075 vtkGetMacro(Outline,int); 00076 vtkBooleanMacro(Outline,int); 00078 00080 00081 vtkSetMacro(Axes,int); 00082 vtkGetMacro(Axes,int); 00083 vtkBooleanMacro(Axes,int); 00085 00087 00088 vtkSetMacro(XShadows,int); 00089 vtkGetMacro(XShadows,int); 00090 vtkBooleanMacro(XShadows,int); 00092 00094 00095 vtkSetMacro(YShadows,int); 00096 vtkGetMacro(YShadows,int); 00097 vtkBooleanMacro(YShadows,int); 00099 00101 00102 vtkSetMacro(ZShadows,int); 00103 vtkGetMacro(ZShadows,int); 00104 vtkBooleanMacro(ZShadows,int); 00106 00108 00111 vtkSetMacro(TranslationMode,int); 00112 vtkGetMacro(TranslationMode,int); 00113 vtkBooleanMacro(TranslationMode,int); 00115 00117 00120 vtkSetMacro(Wrap,int); 00121 vtkGetMacro(Wrap,int); 00122 vtkBooleanMacro(Wrap,int); 00124 00126 vtkPolyData *GetFocus() {return this->Focus;}; 00127 00129 00130 void AllOn(); 00131 void AllOff(); 00133 00134 protected: 00135 vtkCursor3D(); 00136 ~vtkCursor3D(); 00137 00138 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00139 00140 vtkPolyData *Focus; 00141 double ModelBounds[6]; 00142 double FocalPoint[3]; 00143 int Outline; 00144 int Axes; 00145 int XShadows; 00146 int YShadows; 00147 int ZShadows; 00148 int TranslationMode; 00149 int Wrap; 00150 00151 private: 00152 vtkCursor3D(const vtkCursor3D&); // Not implemented. 00153 void operator=(const vtkCursor3D&); // Not implemented. 00154 }; 00155 00156 #endif