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

vtkPropPicker.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkPropPicker.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 =========================================================================*/
00047 #ifndef __vtkPropPicker_h
00048 #define __vtkPropPicker_h
00049 
00050 #include "vtkAbstractPropPicker.h"
00051 
00052 class vtkProp;
00053 class vtkWorldPointPicker;
00054 
00055 class VTK_RENDERING_EXPORT vtkPropPicker : public vtkAbstractPropPicker
00056 {
00057 public:
00058   static vtkPropPicker *New();
00059 
00060   vtkTypeRevisionMacro(vtkPropPicker,vtkAbstractPropPicker);
00061   void PrintSelf(ostream& os, vtkIndent indent);
00062 
00067   int PickProp(double selectionX, double selectionY, vtkRenderer *renderer);  
00068 
00070 
00072   int PickProp(double selectionX, double selectionY, vtkRenderer *renderer, 
00073                vtkPropCollection* pickfrom);  
00075 
00077 
00078   int Pick(double selectionX, double selectionY, double selectionZ, 
00079            vtkRenderer *renderer);  
00080   int Pick(double selectionPt[3], vtkRenderer *renderer)
00081     { return this->Pick( selectionPt[0], 
00082                          selectionPt[1], selectionPt[2], renderer); };  
00084 
00085 protected:
00086   vtkPropPicker();
00087   ~vtkPropPicker();
00088 
00089   void Initialize();
00090   
00091   vtkPropCollection* PickFromProps;
00092   
00093   // Used to get x-y-z pick position
00094   vtkWorldPointPicker *WorldPointPicker;
00095 private:
00096   vtkPropPicker(const vtkPropPicker&);  // Not implemented.
00097   void operator=(const vtkPropPicker&);  // Not implemented.
00098 };
00099 
00100 #endif
00101 
00102