vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MagicWandTool.h
Go to the documentation of this file.
1 #ifndef _DYNAMIC_ART_MAGICWAND_TOOL_H
2 #define _DYNAMIC_ART_MAGICWAND_TOOL_H
3 
4 #include "DATool.h"
5 #include "PoA.h"
6 #include "Attractor.h"
7 
8 class DAEnvironment;
9 class Controller;
10 
11 
12 class MagicWandTool : public DATool
13 {
14 public:
15 
16  MagicWandTool(Controller* contr);
18 
23  void activate();
24 
25  void deactivate();
26 
27  void postInitialize(void);
28 
29  void processEvent(const std::string &input_name, void *value);
30 
31  void turnOn();
32 
33  void turnOff();
34 
35 
36 
37 protected:
39  std::string posString;
40  std::string PointerPosReqString;
41 
42  osg::ref_ptr<Attractor> attractor;
43 
44  bool dominantAxis;
45 
47  osg::Vec3 newHandPosition;
48 
49  double handMoveMin;
50  double handMoveMax;
51 
52  osg::Vec3 paramRangeStart;
53  osg::Vec3 paramRangeEnd;
54  osg::Vec3 initialParamValue;
55  osg::Vec3 paramShift1;
56  osg::Vec3 paramShift2;
57  osg::Vec3 paramMult;
58 
59  int indexX;
60  int indexY;
61  int indexZ;
62 
63  Controller* controller;
66 
67 
68 };
69 
70 
71 #endif // _DYNAMIC_ART_MAGICWAND_TOOL_H