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 "vtkPolyDataAlgorithm.h" 00036 00037 class VTK_GRAPHICS_EXPORT vtkCursor3D : public vtkPolyDataAlgorithm 00038 { 00039 public: 00040 vtkTypeMacro(vtkCursor3D,vtkPolyDataAlgorithm); 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 this->Focus;}; 00126 00128 00129 void AllOn(); 00130 void AllOff(); 00132 00133 protected: 00134 vtkCursor3D(); 00135 ~vtkCursor3D(); 00136 00137 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 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