将不同的文件与topojson组合在不同的简化级别

时间:2013-08-26 20:02:11

标签: topojson

我想将三个geojson文件合并到一个topojson文件中。其中两个文件是非常简单的shapefile。他们不需要简化。

其中一个是10米文化自然地球矢量文件。它的geojson是24.8mb。我需要10米,因为我需要小岛屿留在地图上(虽然我可能会简化它们但保留它们--allow-empty)。

是否可以使用topojson简化10m文化文件,然后使用topojson将其与其他两个geojson文件合并但不简化?

或者这是一个完全歪曲的方法,我应该以另一种方式接近?

感谢您的帮助

1 个答案:

答案 0 :(得分:5)

您可以单独简化它们并合并它们。

鉴于您的文件夹中有3个shapefile,您可以使用makefile:

#Merge:
final.json: map1.json map2.json world10m.json
  topojson --id-property none --allow-empty -o final.json -- map1.json map2.json world10m_s.json

# Simplify:
world10m_s.json -- world10m.json
  topojson --id-property none --allow-empty --simplify 0.5 -p name=Name -o world10m_s.json -- world10m.json

# SHP2JSON
world10m.json: world10m.shp
  ogr2ogr -f GeoJSON world10m.json world10m.shp
map1.json: map1.shp
  ogr2ogr -f GeoJSON map1.json map1.shp
map2.json: map2.shp
  ogr2ogr -f GeoJSON map2.json map2.shp

注意:有很多充分理由Why Use Make

注2:由于topojson脚本也接受.shp输入,我们可以跳过#SHP2JSON任务。