如何在 Android 的 Google 地图上绘制超过 100k LatLng 的折线

问题描述 投票:0回答:1

我的问题如下:我正在 Google 地图中绘制一条实时折线,到目前为止效果很好。 现在我保存了所有获取的 LatLng 点,稍后我想再次加载我走过的路径。 一旦我的数据超过 100k,就需要几秒钟来绘制折线,如果我必须绘制超过 100 万条 LatLng 作为折线,则需要非常非常长的时间来绘制它。

现在我想知道是否可以在合理的时间内绘制超过100k LatLng甚至更多的折线(合理的时间意味着1-2秒!)? 或者我是否必须更改为某些 TileServer - 是否有“已经”内置版本?

非常感谢您提前的帮助

android google-maps polygon
1个回答
0
投票

我建议以下两种解决方案之一:

  1. 您减少了保存的点数。我还记录每次跑步比赛、徒步旅行、骑自行车等,但即使在 8 小时后,我的 GPX 文件中也只有大约 10,000 点。我的记录软件大约每 5 秒或 40 米保存一次坐标(这对于马拉松来说已经足够了)。
  2. 或者您可以简化折线。有命令
    PolyUtil.simplify(fullLine, tolerance)
    ,如果中间点位于直线上(公差除外),则该命令会删除它们。通过这种方式,我已经能够将数据量减少到 5-10%,而轨迹的准确度却不会降低很多。
© www.soinside.com 2019 - 2024. All rights reserved.