VTK  9.2.6
vtkVRHardwarePicker.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: Visualization Toolkit
4 Module: vtkVRHardwarePicker.h
5 
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
29 #ifndef vtkVRHardwarePicker_h
30 #define vtkVRHardwarePicker_h
31 
32 #include "vtkPropPicker.h"
33 #include "vtkRenderingVRModule.h" // For export macro
34 #include "vtkSmartPointer.h" // for ivar
35 
36 class vtkSelection;
37 
38 class VTKRENDERINGVR_EXPORT vtkVRHardwarePicker : public vtkPropPicker
39 {
40 public:
41  static vtkVRHardwarePicker* New();
42 
44 
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
50  virtual int PickProp(double selectionPt[3], double eventWorldOrientation[4],
51  vtkRenderer* renderer, vtkPropCollection* pickfrom, bool actorPassOnly);
52 
53  // return the latest selection
54  vtkSelection* GetSelection();
55 
56 protected:
57  vtkVRHardwarePicker() = default;
58  ~vtkVRHardwarePicker() override = default;
59 
60  void Initialize() override;
62 
63 private:
65  void operator=(const vtkVRHardwarePicker&) = delete;
66 };
67 
68 #endif
pick an actor/prop given a controller position and orientation
pick an actor/prop using graphics hardware
Definition: vtkPropPicker.h:45
void Initialize() override
abstract specification for renderers
Definition: vtkRenderer.h:72
data object that represents a "selection" in VTK.
Definition: vtkSelection.h:59
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
an ordered list of Props
static vtkPropPicker * New()
a simple class to control print indentation
Definition: vtkIndent.h:39
int PickProp(double selectionX, double selectionY, vtkRenderer *renderer)
Perform the pick and set the PickedProp ivar.
vtkSmartPointer< vtkSelection > Selection