2009-08-11 65 views
1

我正在试图制作一个使用MapPoint 3d渲染引擎的控件。该控件获取GlobeControl(通过GlobeControl构造函数),然后呈现3D地图。问题是,如果我稍后尝试获取另一个GlobeControl,则新构造的GlobeControl的globeControl.Host对象几乎全部为null,包括RenderEngine。MapPoint GlobeControl对象有限制吗?

这使得在我们希望在我们的表面上有多个贴图的场景中使用它会有问题。

我想到的一种解决方法是先构建一大堆GlobeControls(在我渲染任何东西之前),然后将其视为GlobeControl池,尽管我不知道我是否只是在问问题(例如,如果MapPoint每个进程只支持一个GlobeControl或某物)。

任何帮助或洞察力非常感谢。请让我知道你是否需要更多的澄清。

+0

我已经删除了MapPoint标记,因为这并不涉及MapPoint(桌面或已弃用的MapPoint Web Service),而是Bing Maps 3d Control(以前称为Virtual Earth 3d Control)。 – winwaed 2011-01-24 15:57:25

回答

0

我确实找到了满足我的答案。我还在CodePlex上发布了一个类似的问题,回复如下:

“由于Virtual Earth 3D本身的技术限制,每个进程只能对一个3D引擎实例进行初始化,因此VE3D在内部使用了单一变量没有办法有一个以上的。“

http://bingmapswpf.codeplex.com/Thread/View.aspx?ThreadId=65223&ANCHOR

我们最终转向基于的DeepZoom-Silverlight的解决方案。