EasonDian 2017-03-21 11:45 采纳率: 66.7%
浏览 1167
已结题

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

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

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-03-21 12:05
    关注

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

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable