首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缩放导致具有折线的Bing地图中出现(严重)问题

缩放导致具有折线的Bing地图中出现(严重)问题
EN

Stack Overflow用户
提问于 2011-01-07 06:02:40
回答 1查看 773关注 0票数 1

你好,我有一些关于Bing Map控件的问题。

如果缩放到多段线附近,它们将开始消失(从下到上,从右到左)

多段线是用一个ItemsControl (包含在地图名称空间中的那个)动态生成的,它被绑定到我自己的来自ViewModel的LocationData的集合,该集合由IValueConverter转换为特定于地图的LocationPoints。

某些无法从ViewModel访问的值是在loaded事件中设置的。

地图和容器在整个屏幕上展开。

因此,如果线条开始消失,我通过ApplicationBar中的一个按钮缩小

代码语言:javascript
复制
private void ZoomOut_Click(object sender, RoutedEventArgs e)
{
    map1.ZoomLevel -= 1.0;
}

应用程序无异常退出...

我已经在有调试器和没有调试器的真实设备上进行了测试,调试器只说他已经失去了与设备的连接。

有没有人有这个或类似的问题,并希望解决它?

谢谢你的帮助。

PS:我的LocationData包含大约100 - 200个点,这些点被分成3-7条线,不能太多,或者?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-02 14:47:37

是的,几百分太多了,但这是你最小的问题。按照您的编码方式,每次进行平移或缩放时,您都会重新转换和重新绘制点。

  • 不要使用类型转换器。转换您的点一次,缓存转换的点,并绑定到转换的points.
  • Research四叉树,以及它们如何应用于按缩放级别比例剔除您的点集。
  • 应用剪裁矩形。根据我的经验,显示区域的两边大半度效果很好。
  • 研究了必应地图事件模型,并重新设计了你的代码,以便在地图操作时只对其进行剔除、裁剪和绘图。

编写您的剔除、裁剪和绘图逻辑,以便它是异步的,并且可以通知中止,这样如果在剔除、裁剪和绘图完成之前操作重新开始,它就可以中止并重新启动。

使用上面的技术,我能够获得与内置map相当的性能。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4620402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档