Carna  Version 3.3.2
CameraShowcaseControl.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2010 - 2015 Leonid Kostrykin
3  *
4  * Chair of Medical Engineering (mediTEC)
5  * RWTH Aachen University
6  * Pauwelsstr. 20
7  * 52074 Aachen
8  * Germany
9  *
10  */
11 
12 #ifndef CAMERASHOWCASECONTROL_H_6014714286
13 #define CAMERASHOWCASECONTROL_H_6014714286
14 
15 #include <Carna/Carna.h>
17 #include <memory>
18 
23 namespace Carna
24 {
25 
26 namespace presets
27 {
28 
29 
30 
31 // ----------------------------------------------------------------------------------
32 // CameraShowcaseControl
33 // ----------------------------------------------------------------------------------
34 
46 {
47 
49 
50  struct Details;
51  const std::unique_ptr< Details > pimpl;
52 
53 public:
54 
58  const static float DEFAULT_MIN_DISTANCE;
59 
63  const static float DEFAULT_MAX_DISTANCE;
64 
69 
73  virtual ~CameraShowcaseControl();
74 
82  void setMinDistance( float minDistance );
83 
91  void setMaxDistance( float maxDistance );
92 
96  float minDistance() const;
97 
101  float maxDistance() const;
102 
106  virtual void setCamera( base::Spatial& ) override;
107 
112  virtual void rotateHorizontally( float radians ) override;
113 
118  virtual void rotateVertically( float radians ) override;
119 
125  virtual void moveAxially( float units ) override;
126 
127  virtual void moveLaterally( float unitsX, float unitsY ) override;
128 
129 }; // CameraShowcaseControl
130 
131 
132 
133 } // namespace Carna :: presets
134 
135 } // namespace Carna
136 
137 
138 
139 #endif // CAMERASHOWCASECONTROL_H_6014714286
static const float DEFAULT_MAX_DISTANCE
Holds default maximum allowed distance of the camera to its origin.
Represents a spatial scene element. It&#39;s location is determined relatively to another spatial that is...
Definition: Spatial.h:44
Implements base::CameraControl, rotates the camera around its parent node. The camera movement is bou...
Defines Carna::base::CameraControl.
Defines interface for intuitive Camera control.
Definition: CameraControl.h:39
static const float DEFAULT_MIN_DISTANCE
Holds default minimum allowed distance of the camera to its origin.
#define NON_COPYABLE
Features class it is placed in as non-copyable.
Definition: noncopyable.h:109