Suite

Comment fusionner les calques de deux tuiles vectorielles avec Mapnik ?

Comment fusionner les calques de deux tuiles vectorielles avec Mapnik ?


J'utilise Mapnik + Mapbox nodejs stack. Étant donné deux tuiles vectorielles (PBF) pour le même emplacement/zoom, avec certaines couches ayant le même nom dans les deux. Comment puis-je les fusionner en une seule tuile PBF - en remplaçant les couches du même nom dans la première tuile par celles de la deuxième tuile ?

Mettre à jour: J'ai trouvé que je peux ajouter des couches via GeoJson, mais cela semble terriblement inefficace: addGeoJSON ne remplace pas la couche existante, mais en ajoute une nouvelle (même si le même nom existe déjà), je dois donc exporter chaque couche vers JSON et re- ajoutez-les à une nouvelle vignette :

newVectorTile.addGeoJSON(vectorTile.toGeoJSON('water'), 'water');

2 ans plus tard, mais j'ai eu du succès en faisant ce que je pense que vous voulez faire en utilisant l'outil de jointure de tuiles dans mapbox tippecanoe. C'est open source.

https://github.com/mapbox/tippecanoe#tile-join

Tile-join est un outil permettant de copier et de fusionner des fichiers mbtiles vectoriels et de joindre de nouveaux attributs d'un fichier CSV aux fonctionnalités existantes.

Il lit les tuiles à partir d'un fichier .mbtiles existant ou d'un répertoire de tuiles, les compare aux enregistrements du fichier CSV (le cas échéant) et écrit un nouveau jeu de tuiles.

Si vous spécifiez plusieurs fichiers mbtiles source ou répertoires source de tuiles, toutes les sources sont lues et leur contenu combiné est écrit dans la nouvelle sortie mbtiles. S'ils définissent les mêmes calques ou les mêmes tuiles, les calques ou tuiles sont fusionnés.


Voir la vidéo: 1 Neliöpunonta PALOJEN LEIKKAAMINEN