VTK  9.3.1
vtkVRHardwarePicker.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
17 #ifndef vtkVRHardwarePicker_h
18 #define vtkVRHardwarePicker_h
19 
20 #include "vtkPropPicker.h"
21 #include "vtkRenderingVRModule.h" // For export macro
22 #include "vtkSmartPointer.h" // for ivar
23 
24 VTK_ABI_NAMESPACE_BEGIN
25 class vtkSelection;
26 
27 class VTKRENDERINGVR_EXPORT vtkVRHardwarePicker : public vtkPropPicker
28 {
29 public:
30  static vtkVRHardwarePicker* New();
31 
33 
34  void PrintSelf(ostream& os, vtkIndent indent) override;
35 
39  virtual int PickProp(double selectionPt[3], double eventWorldOrientation[4],
40  vtkRenderer* renderer, vtkPropCollection* pickfrom, bool actorPassOnly);
41 
42  // return the latest selection
43  vtkSelection* GetSelection();
44 
45 protected:
46  vtkVRHardwarePicker() = default;
47  ~vtkVRHardwarePicker() override = default;
48 
49  void Initialize() override;
51 
52 private:
54  void operator=(const vtkVRHardwarePicker&) = delete;
55 };
56 
57 VTK_ABI_NAMESPACE_END
58 #endif
pick an actor/prop given a controller position and orientation
pick an actor/prop using graphics hardware
Definition: vtkPropPicker.h:34
void Initialize() override
abstract specification for renderers
Definition: vtkRenderer.h:61
data object that represents a "selection" in VTK.
Definition: vtkSelection.h:49
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:28
int PickProp(double selectionX, double selectionY, vtkRenderer *renderer)
Perform the pick and set the PickedProp ivar.
vtkSmartPointer< vtkSelection > Selection