Consider the following sandcastle code:
var viewer = new Cesium.Viewer('cesiumContainer');
var lat=41.249, lon=-70.0921, alt=272, hdg=300;
positionCartographic: new Cesium.Cartographic.fromDegrees(lon, lat, alt),
heading: Cesium.Math.toRadians( hdg ),
pitch: Cesium.Math.toRadians(pitch )
The pitch is 0, and the horizon is centered vertically. The vertical position of the horizon does not change as you resize the window and change the aspect ratio of cesiumContainer.
Now set pitch=15 and run. Keep the window's height constant and vary its width. As long as width<height, the horizon stays in place. When width>height , the horizon moves lower with increasing width/height ratio.
Is this a bug or a feature?
In our product we overlay a HUD on the picture, including an artificial horizon. Our computations of the artificial horizon's height match Cesium's only when the div's width<=height. Our computations do not take into account the aspect ratio. Should they?