MapControl相机的更改视野改变了相机的高度

问题描述 投票:0回答:2

我正在创建一个应用程序,我们可以使用MapControl相机播放该应用程序,同时更改外观方向(航向),侧倾角,外观标高(俯仰)和视野(以放大或缩小场景)。

[当我开始缩小视角时,相机开始增加高度,当距离地图的地面或表面越近,效果越明显。更改俯仰值时也会发生同样的情况,在某些角度下,摄像机也会获得高度。

我已经检查了相机位置值的海拔值和MapControl.ActualCamera.Location.Position.Altitude值始终相同。当相机只是“卡在”地面上时,这种效果更加明显(尽管相机与地面之间总是相差20米左右。)>

这是我用来设置MapCamera,Pitch,FoV等的高度的代码。

newCamera = new MapCamera(cameraVR.GroundGeopoint, cameraVR.Heading, cameraVR.Pitch, cameraVR.Roll, cameraVR.FoV);
MapScene mapScene = MapScene.CreateFromCamera(newCamera);
mapPosition.TrySetSceneAsync(mapScene, MapAnimationKind.None);

GroundGeopoint是摄像机“卡在”地面的位置,即使它一直漂浮在离地面几米的地方。

[我正在创建一个可以用MapControl相机播放的应用程序,它还可以更改外观方向(航向),侧倾角,外观标高(俯仰)和视野(以放大或缩小场景)...

uwp bing-maps uwp-maps
2个回答
0
投票

更改俯仰角将更改报告的摄像机高度。这是完全可以预期的。当您相对于表面倾斜相机时,它将接近表面。您正在将相机移动到围绕中心点定位的球体上。例如,如果您请求45度的俯仰,我希望您的海拔降低1.4倍。更改视野通常不应更改高度,只有一个小小的例外-FOV更改可能会导致显示的细节级别发生更改。当加载更高或更低的详细级别时,由于数据的准确性,报告的高度可能会发生一些细微变化,但我认为这些变化不会很大。还有一个可能会遇到的最低海拔高度。最低高度取决于源数据的分辨率,通常约为50m。当前不支持换卷。


0
投票

滚动应用于MapCamera和一个小的FoV(相当于93mm相机镜头),显示出非常低的多边形场景。较宽或较窄的FoV都没有细节差异。我希望在更多的表面网格和纹理方面有更多细节。 MapCamera高度指示2042.64m(屏幕截图的左下方)。

© www.soinside.com 2019 - 2024. All rights reserved.