0

我有一个需要同时在地图上显示 30,000 个标记的 Web 应用程序。我不想使用任何类型的集群。我需要将它们全部显示出来。

我还需要它们是可点击的。用户可以单击每个点,弹出窗口会显示有关该点的信息。即使在单个 256x256 正方形中有数千个标记时,即使在低缩放级别下,用户也需要能够单击它们。用户单击与数百个其他点捆绑在一起的点可能很麻烦,但是如果恰好在某个地方中间有一个标记,我希望用户能够在此处单击它而不是不得不放大。

我该怎么做呢?我知道这是可能的,因为我在谷歌视频上观看了一个视频,这个人创建了一个带有可点击标记的 GtileLayerOverlay 应用程序。不过他没有解释是怎么做到的。

我唯一的选择是在高缩放级别删除 GtileLayerOverlay 并用真正的 GMarker 图层替换它吗?我真的不想那样做。对我来说,这似乎超过了工程。

如果你是我,你会怎么处理这件事?

4

1 回答 1

1

我发现这个例子在Google Maps API Demo Gallery中:

Clickable Tile Layer 此示例创建一个自定义地图类型 (GMapType),用于显示县中心的区域边界和正方形。单击方块时,会打开一个信息窗口,其中包含有关该县的信息。可点击性是通过在附加到图块的 cookie 中传递有关可点击像素边界的信息来实现的,并在鼠标悬停时执行客户端检查鼠标位置是否在像素边界内。

以下是对他的方法的一些评论。

我对 GtileLayOverlays 没有任何经验,但我相信在不使用 GMarkers 的情况下也可以完成你想做的事情。

如果每个集群都可以显示它所代表的标记列表,是否可以利用集群?似乎同时显示 30,000 个标记会在视觉上令人困惑且难以导航。

于 2009-06-09T18:34:31.137 回答