0

我在优化绘制类似 Google 的地图时遇到问题。它适用于数百个点,但当涉及到数千个点时,它会变得模糊和缓慢。也未缩放它看起来很奇怪。

我想知道如何优化绘图算法以绘制更少的地方,所以它看起来像在谷歌地图上取消缩放。

但是,我也绘制了地点之间的链接,但我无法优化它。

请发表任何你能想到的东西,我必须完成这个并明天发送。

这是它的样子:

放大 缩小

4

3 回答 3

1

这里有两个想法:

  1. 我们在地图上绘制的每个对象在数据库中都有一个额外的值,即“缩放级别”。放大时,将根据该值显示额外的项目。

  2. 第二种方法是使用分组。如果项目开始重叠,则以 [10 项] 显示一个点。放大时仅显示其下方的项目。

于 2009-11-29T19:43:50.513 回答
0

一些提示:

  1. 剪辑区域,仅在剪辑区域中绘制点
  2. 您可以查看开源 GIS 项目,了解他们如何优化绘图。
于 2009-11-29T19:38:26.923 回答
0

我想我会很想不画短于阈值的线(我的意思是视口,而不是绝对距离)。这意味着当地图缩小时,您将可以绘制更少的内容,并且地图看起来不那么繁忙,并且当地图放大时,这些附近点之间的线将变得可见。编辑:实际上,再想一想,我想我只会在屏幕上有大量行时才应用这个长度限制——或者使长度阈值成为屏幕上行数的函数。

我想我也很想不绘制来自屏幕外(视口外)或至少远离屏幕(远离视口中心的阈值)的点的线。我建议先尝试这个改变。

这些更改可能看起来会隐藏信息(而且它们会隐藏信息),但就目前而言,地图是如此繁忙,所提供的信息无论如何都几乎没有用。

于 2009-11-29T21:46:28.317 回答