0

我正在开发一个 UWP 项目,我在倾斜的 BingMaps 地图上渲染 3D 内容。

我在位于地图顶部的单独(部分透明)控件中使用 directx 渲染我的 3d 内容。所以它不是在 mapcontrol 内或作为 mapcontrol 或任何东西的一部分呈现,它是完全独立的。

我制作了将地理/gps 坐标传输到我在 Directx 中使用的 3d 坐标系的方法,并且我使 directx 中的相机与地图的相机相匹配。

但问题是,我从 mapcontrol 检索到的相机数据似乎并不总是正确的,或者至少不是最新的。

我使用这些属性:MapControl.ActualCamera.Location.Position、MapControl.Center.Location.Position 和 MapControl.ActualCamera.FieldOfView。

这些可能不是获取实际当前相机数据的最佳方法吗?如果是这样,我应该使用哪些?

4

1 回答 1

0

相机对象当前未定义为允许您完全复制所使用的完整投影矩阵,因此我认为您无法渲染完全匹配的 3D 内容。空中和道路模式使用不同的投影(墨卡托平面与地球),并且您无法在不知道地图投影和地形表面值的情况下从中心位置属性重建相机观察矢量。

于 2016-11-29T19:03:03.113 回答