将 23mb kml 文件拆分为 3 个偶数部分
Posted
技术标签:
【中文标题】将 23mb kml 文件拆分为 3 个偶数部分【英文标题】:Split 23mb kml file into 3 even pieces 【发布时间】:2013-08-25 10:00:57 【问题描述】:我已查看此处,但尚未找到任何符合我的问题的解决方案。 我查看了我使用的函数,发现它没有任何意义,因为它没有考虑文件的大小或其他任何东西。 您能否让我知道使用什么算法或方法来拆分大型 kml 文件。或者,我想知道是否可以从后端提供一个大的 kml 文件? 在此先感谢:-)
【问题讨论】:
结束了使用记事本编辑并使用 google earth 生成 kmz,比我预期的更快更容易。但我希望看到一种程序化的方法来解决这个问题,所以请分享你通常是如何解决这个问题的 【参考方案1】:您在评论中确定了正确的第一步,因为您应该生成 KMZ。我还寻找以下位置来保存我的 KML 文件中的字符:
-
检查坐标的精度。 5 位小数可以让您获得约 1 米的精度。如果你盲目地返回更多(13 左右精确到头发的宽度),这可以显着减小尺寸。
删除空白 - 可以提供惊人的帮助,但如果您同时使用 KMZ 压缩,这里的任何收益都会丢失。
选择缩短的元素、样式和其他名称,如果经常重复这也可以节省整体大小,但也可以通过使用 KMZ 轻松缓解。
如果您需要将其拆分,只需在脚本中解析整个文档并为每个输出文件输出 x 个地标(在每个输出 KML 文件中具有相同的父节点)。我会看看这个库来解析/创建你的 KML:https://github.com/earelin/php-libkml
【讨论】:
谢谢,我不知道 libkml php 的实现 @Ego_I 没问题。大多数语言都有一个库,它们让生活变得更好。以上是关于将 23mb kml 文件拆分为 3 个偶数部分的主要内容,如果未能解决你的问题,请参考以下文章