All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
MapCameraDistanceBasedPitchControl.h
1 #pragma once
2 
3 #include "MapCamera.h"
4 #include "IGlobeCameraDistanceBasedPitchControl.h"
5 #include "Types.h"
6 
7 namespace Eegeo
8 {
9  namespace Camera
10  {
11  namespace MapCamera
12  {
14  {
15  public:
16  static MapCameraDistanceBasedPitchControl* CreateFromGlobeCameraConfig(const Eegeo::Camera::GlobeCamera::GlobeCameraControllerConfiguration& globeCameraConfig);
17 
18  float CalculatePitchDegrees(float distanceToInterest) const;
19 
20 
21  private:
23  const float globeModeBeginPitchAltitude,
24  const float globeModeEndPitchAltitude,
25  const float pitchCityMode,
26  const float pitchGlobeMode
27  );
28 
29  float CalculateInterpolationParameter(float distanceToInterest) const;
30 
31  const float m_globeModeBeginPitchAltitude;
32  const float m_globeModeEndPitchAltitude;
33  const float m_pitchCityMode;
34  const float m_pitchGlobeMode;
35  };
36  }
37  }
38 }