求助:java如何精简数据?数据是几千条google的地图坐标(经纬度) 5C

有几个城市的google地图kml文件,每个文件中有几千条(大概六千)经纬度数据(连起来就是城市平面图)。
由于某种原因,需要将这些数据精简到原来总数据的三分之一条,而不影响地图的呈现效果,
我想的是:排除一些比较接近的数据,或者有某两个坐标差距较大可以取其中间坐标。
但是不知道具体的算法,求助各位大神,有什么更好的方案,最好有具体的算法。
谢谢大家

1个回答

因为所有中国的地理坐标都在北纬/东经范围内,所以N E两个符号可以不要。
其次,每个城市基本上都在110km的范围内,所以可以用城市基准坐标+每个地点偏移坐标,而偏移坐标+-可以小于1度。
这两样可以压缩超过50%的数据
然后再用公共前缀的方式存入hash表,又可以大大压缩数据量。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!