1

我需要每个德国州的多边形。我将所有内容都GeoPoints放在一个JavaScript文件中,但该文件是因为大约4MB. 我整天都在谷歌上搜索并思考这个问题,但无法找到解决方案......

如何在Google Maps不强制用户下载带有坐标的巨大 js 文件的情况下使用多边形?

谢谢!罗恩

4

3 回答 3

2

一种选择是使用 FusionTablesLayer 来显示多边形。它们在公开可用的自然地球数据集中可用。

例子

如果您将数据转换为 KML,您可以对您的点和 KmlLayer 执行相同的操作。

于 2012-09-03T16:09:34.783 回答
2

您可以对多边形点进行编码以大大减小 javascript 文件的大小。为此,您必须包含几何库。

https://developers.google.com/maps/documentation/javascript/reference#encoding

https://developers.google.com/maps/documentation/javascript/geometry#Encoding

于 2012-09-06T00:50:03.867 回答
0

嗯......不知何故,这些点必须到达用户手中。您可以考虑以下解决方案来减少数据使用量:

  • 为不同的缩放级别使用不同的多边形。例如缩小你不需要完整的细节。
  • 只将多边形的一部分发回给用户。例如,您可以将视口坐标发送到 AJAX 脚本。这一个查询您的数据库和/或 shapefile,只返回在用户视口中可见的多边形部分
  • 预处理瓷砖。如果您可以从您的形状生成图像,则可以将这些图像叠加在 Google 地图上。
于 2012-09-03T15:58:26.247 回答