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

dox/Rendering/vtkAbstractPropPicker.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkAbstractPropPicker.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00067 #ifndef __vtkAbstractPropPicker_h 00068 #define __vtkAbstractPropPicker_h 00069 00070 #include "vtkAbstractPicker.h" 00071 00072 class vtkProp; 00073 class vtkPropAssembly; 00074 class vtkAssembly; 00075 class vtkActor; 00076 class vtkVolume; 00077 class vtkProp3D; 00078 class vtkAssemblyPath; 00079 class vtkActor2D; 00080 00081 class VTK_RENDERING_EXPORT vtkAbstractPropPicker : public vtkAbstractPicker 00082 { 00083 public: 00084 vtkTypeRevisionMacro(vtkAbstractPropPicker,vtkAbstractPicker); 00085 void PrintSelf(ostream& os, vtkIndent indent); 00086 00088 00095 virtual void SetPath(vtkAssemblyPath*); 00096 vtkGetObjectMacro(Path,vtkAssemblyPath); 00098 00099 // The following are convenience methods to maintain API with older 00100 // versions of VTK, and to allow query for the return type of a pick. Note: 00101 // the functionality of these methods can also be obtained by using the 00102 // returned vtkAssemblyPath and using the IsA() to determine type. 00103 00106 virtual vtkProp *GetProp(); 00107 00110 virtual vtkProp3D *GetProp3D(); 00111 00114 virtual vtkActor *GetActor(); 00115 00118 virtual vtkActor2D *GetActor2D(); 00119 00122 virtual vtkVolume *GetVolume(); 00123 00129 virtual vtkAssembly *GetAssembly(); 00130 00136 virtual vtkPropAssembly *GetPropAssembly(); 00137 00138 protected: 00139 vtkAbstractPropPicker(); 00140 ~vtkAbstractPropPicker(); 00141 00142 void Initialize(); 00143 00144 vtkAssemblyPath *Path; //this is what is picked, and includes the prop 00145 private: 00146 vtkAbstractPropPicker(const vtkAbstractPropPicker&); // Not implemented. 00147 void operator=(const vtkAbstractPropPicker&); // Not implemented. 00148 }; 00149 00150 #endif