Flair
Framework Libre Air
FollowMeCamera.h
1 // %flair:license{
2 // This file is part of the Flair framework distributed under the
3 // CECILL-C License, Version 1.0.
4 // %flair:license}
5 // created: 2012/08/21
6 // filename: FollowMeCamera.h
7 //
8 // author: Guillaume Sanahuja
9 // Copyright Heudiasyc UMR UTC/CNRS 7253
10 //
11 // version: $Id: $
12 //
13 // purpose: classe definissant une animation poursuite pour camera
14 //
15 /*********************************************************************/
16 
17 #ifndef FOLLOWMECAMERA_H
18 #define FOLLOWMECAMERA_H
19 
20 #include "VisualizationCamera.h"
21 
22 
23 namespace flair {
24 namespace simulator {
25 
27 public:
28  FollowMeCamera(const irr::scene::ISceneNode *parent,std::string name,
29  float rotateSpeed = -500.0f, float zoomSpeed = 4.0f);
30  ~FollowMeCamera();
31 
32  void animateNode(irr::scene::ISceneNode *node, irr::u32 timeMs) override;
33  void setPositionOffset(irr::core::vector3df newpos);
34  void setTargetOffset(irr::core::vector3df newpos);
35 
36 private:
37  irr::core::vector3df pos_offset, target_offset;
38  irr::core::position2df RotateStart;
39  const irr::scene::ISceneNode *parent;
40  bool Rotating;
41  float RotY, RotZ;
42  float sat(float value);
43  float rotateSpeed;
44  float zoomSpeed;
45 };
46 
47 } // end namespace simulator
48 } // end namespace flair
49 
50 #endif // FOLLOWMECAMERA_H
Definition: FollowMeCamera.h:26
namespace of the flair Framework
Definition: Ahrs.h:19
Definition: VisualizationCamera.h:41