使用tippecanoe进行批量生成矢量瓦片的方法
Posted jyughynj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用tippecanoe进行批量生成矢量瓦片的方法相关的知识,希望对你有一定的参考价值。
// tippecanoe切片的命令格式:tippecanoe - e ./pbf/lakepbf -pC -Z8 -z20 -f lake.geojson
使用tippecanoe生成矢量瓦片的方法,可以https://www.cnblogs.com/jyughynj/p/11804721.html。
但这里介绍了一次生成一个图层的瓦片,实际项目中肯定会有很多个图层,手动一条条修改命令、执行效率实在比较低。
事实上,可以把多条命令用“;”分割后一起放入tippecanoe中执行。像下面这样:
1 tippecanoe - e ./pbf/data0 -pC -Z8 -z20 -f data0.geojson;tippecanoe - e ./pbf/data1 -pC -Z8 -z20 -f data1.geojson;tippecanoe - e ./pbf/data2 -pC -Z8 -z20 -f data2.geojson;tippecanoe - e ./pbf/data3 -pC -Z8 -z20 -f data3.geojson;
只要把命令预先写好粘到tippecanoe即可,但是能更偷懒的话还是要再试一下的。这么多命令中只有输入参数和输出的目录不同,都是文件名相关的,可以通过遍历文件名生成这个命令列表。
node.js的代码如下:
1 var fs = require(‘fs‘); 2 3 var dirGeojson = ‘D:/geojson/‘; // geojson文件目录 4 var dirPbf = ‘D:/pbf/‘; // 生成切片的目录 5 6 fs.readdir(dirGeojson, function(err, files) { 7 let res = ‘‘; 8 files.forEach(item => { 9 res += 10 ‘tippecanoe -e ‘ + 11 dirPbf + 12 item.split(‘.‘)[0] + 13 ‘ -pC -Z8 -z20 -f ‘ + 14 dirGeojson + 15 item + 16 ‘;‘; 17 }); 18 // 将生成切片命令写入文件 19 fs.writeFile(‘./tippecanoe-command.txt‘, res, function() { 20 console.info(‘ok‘); 21 }); 22 });
这里输入的geojson目录和输出的pbf目录都是绝对路径,所以打开tippecanoe后直接粘贴 tippecanoe-command.txt 中的内容就能运行。
以上是关于使用tippecanoe进行批量生成矢量瓦片的方法的主要内容,如果未能解决你的问题,请参考以下文章