Как добавить векторные данные в mbtiles - PullRequest
0 голосов
/ 25 марта 2019

Я разделил свой geoJSON с помощью geojsonvt и хочу поместить эти плитки в mbtiles.и служить с серверомЯ получил его на работу и отредактировал мой вопрос до первоначального ответа.Вам необходимо заполнить запись метаданных информации, по крайней мере, сказать, что ее формат pbf. Я думаю, что tileserver заполняет некоторые из них для вас, но вы не получите формат openmaptiles, если оставите его пустым.А затем вам нужно испечь протобуф для хранения ваших данных.Затем вы можете при необходимости сжать его, а затем поместить его в буфер: пока вы правильно настроили параметры z, x и y, вы должны быть в состоянии просто указать на него плитку tileserver-gl и идти.

var layername="buzmap"
info.name= "openmaptiles"
info.format="pbf"
info.id="buzmap"
info.type="overlay"
info.minzoom=0
info.maxzoom=24
info.version=3
info.bounds="-180,-180,180,180"
                    info.json= `{"vector_layers": [ { "id": "${layername}", "description": "", "minzoom": 0, "maxzoom": 24, "fields": {} } ] }`

.....

tile=geojsonvt(geoJSON,options)
data=JSON.stringify(index.getTile(z,x,y))
protobuffer = vtpbf.fromGeojsonVt({ 'geojsonLayer': tile })

buffer=Buffer.from(pako.deflate(protobuffer))
mbtiles.startWriting(function(){
        return mbtiles.putTile(z,x,y, buffer,function(err){
...