All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
MapCameraDistanceBasedFovControl.h
1 #pragma once
2 
3 #include "MapCamera.h"
4 #include "IGlobeCameraDistanceBasedFovControl.h"
5 #include "Types.h"
6 
7 namespace Eegeo
8 {
9  namespace Camera
10  {
11  namespace MapCamera
12  {
14  {
15  public:
16  static MapCameraDistanceBasedFovControl* CreateFromGlobeCameraConfig(const Eegeo::Camera::GlobeCamera::GlobeCameraControllerConfiguration& globeCameraConfig);
17 
18  float CalculateFovDegrees(float distanceToInterest) const;
19 
20 
21  private:
23  const float globeModeBeginFOVChangeAltitude,
24  const float globeModeEndFOVChangeAltitude,
25  const float zoomAltitudeLow,
26  const float fovZoomedInCity,
27  const float fovZoomedInGlobe,
28  const float fovZoomedOutGlobe
29  );
30 
31 
32  const float m_globeModeBeginFOVChangeAltitude;
33  const float m_globeModeEndFOVChangeAltitude;
34  const float m_zoomAltitudeLow;
35  const float m_fovZoomedInCity;
36  const float m_fovZoomedInGlobe;
37  const float m_fovZoomedOutGlobe;
38 
39 
40 
41  };
42  }
43  }
44 }