VTK  9.3.20240420
vtkAvatar.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
14#ifndef vtkAvatar_h
15#define vtkAvatar_h
16
17#include "vtkActor.h"
18#include "vtkRenderingCoreModule.h" // For export macro
19
20VTK_ABI_NAMESPACE_BEGIN
21class VTKRENDERINGCORE_EXPORT vtkAvatar : public vtkActor
22{
23public:
24 static vtkAvatar* New();
25 vtkTypeMacro(vtkAvatar, vtkActor);
26 void PrintSelf(ostream& os, vtkIndent indent) override;
27
31 vtkGetVector3Macro(HeadPosition, double);
32 vtkSetVector3Macro(HeadPosition, double);
33 vtkGetVector3Macro(HeadOrientation, double);
34 vtkSetVector3Macro(HeadOrientation, double);
35
36 vtkGetVector3Macro(LeftHandPosition, double);
37 vtkSetVector3Macro(LeftHandPosition, double);
38 vtkGetVector3Macro(LeftHandOrientation, double);
39 vtkSetVector3Macro(LeftHandOrientation, double);
40
41 vtkGetVector3Macro(RightHandPosition, double);
42 vtkSetVector3Macro(RightHandPosition, double);
43 vtkGetVector3Macro(RightHandOrientation, double);
44 vtkSetVector3Macro(RightHandOrientation, double);
45
49 vtkGetVector3Macro(UpVector, double);
50 vtkSetVector3Macro(UpVector, double);
51
53
58 vtkSetMacro(UseLeftHand, bool);
59 vtkGetMacro(UseLeftHand, bool);
60 vtkBooleanMacro(UseLeftHand, bool);
61 vtkSetMacro(UseRightHand, bool);
62 vtkGetMacro(UseRightHand, bool);
63 vtkBooleanMacro(UseRightHand, bool);
65
67
70 vtkSetMacro(ShowHandsOnly, bool);
71 vtkGetMacro(ShowHandsOnly, bool);
72 vtkBooleanMacro(ShowHandsOnly, bool);
74
75protected:
77 ~vtkAvatar() override;
78
79 double HeadPosition[3];
80 double HeadOrientation[3];
81 double LeftHandPosition[3];
82 double LeftHandOrientation[3];
83 double RightHandPosition[3];
84 double RightHandOrientation[3];
85 enum
86 {
93 };
94 double BodyPosition[NUM_BODY][3];
95 double BodyOrientation[NUM_BODY][3];
96
97 double UpVector[3];
98
102
103private:
104 vtkAvatar(const vtkAvatar&) = delete;
105 void operator=(const vtkAvatar&) = delete;
106};
107
108VTK_ABI_NAMESPACE_END
109#endif // vtkAvatar_h
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:151
Renders head and hands for a user in VR.
Definition vtkAvatar.h:22
@ RIGHT_UPPER
Definition vtkAvatar.h:91
bool ShowHandsOnly
Definition vtkAvatar.h:101
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkAvatar() override
bool UseRightHand
Definition vtkAvatar.h:100
static vtkAvatar * New()
bool UseLeftHand
Definition vtkAvatar.h:99
a simple class to control print indentation
Definition vtkIndent.h:108