#VectorTile
#OpenStreetMap 生誕20周年、ついに Mapbox Vector Tile (MVT) 形式のベクトルタイル公式ホスティング開始!まだ試験的なホスティングですがデモサイトで試せます。
pnorman.github.io/tilekiln-sho...
vector.openstreetmap.org/shortbread_v...

#MVT #VectorTile #Mapbox #MapLibre #OpenData #FOSS4G #GEOlab #PoliMI #FuruhashiLab #古橋研究室 #AoyamaGSC #地球社会共生学部 #青学 #一億総伊能化
November 20, 2024 at 11:22 AM
MapLibre Tile: A Next Generation Vector Tile Format
The Mapbox Vector Tile (MVT) format is widely considered the leading open standard for large-scale map visualization, as evidenced by its widespread adoption by major technology companies such as AWS, Meta, and Microsoft for their products and services. However, MVT was developed nearly a decade ago and, consequently, does not fully align with the capabilities of new geospatial data sources that are characterized by rapidly increasing data volumes due to advancements in geospatial sensors and automated detection through artificial intelligence. In this paper, we introduce the MapLibre Tile (MLT) format, a novel vector tile specification designed from the ground up to address the limitations of MVT. Our experiments, simulating user sessions on widely used basemap datasets, demonstrate that MLT achieves up to three times better compression ratios compared to MVT on encoded tilesets, with over six times better on certain large tiles. Additionally, MLT offers decoding speeds that are up to three times faster and significantly enhances processing performance. MLT also introduces new functionalities and is specifically designed to lay the foundation for the next generation of map renderers, which we expect to entirely offload processing to the GPU, thereby overcoming the stagnation of Moore`s law.
arxiv.org
August 19, 2025 at 6:15 PM
GitHub – rastapasta/mapscii: 🗺 MapSCII is a Braille & ASCII world map renderer for your console – enter => telnet mapscii.me

A node.js based Vector Tile to Braille and ASCII renderer for xterm-compatible terminals. If you're on Windows, use the open source telnet client PuTTY to connect. Use your…
GitHub – rastapasta/mapscii: 🗺 MapSCII is a Braille & ASCII world map renderer for your console – enter => telnet mapscii.me
A node.js based Vector Tile to Braille and ASCII renderer for xterm-compatible terminals. If you're on Windows, use the open source telnet client PuTTY to connect. Use your mouse to drag and zoom in and out! Discover Point-of-Interests around any given location Highly customizable layer styling with Mapbox Styles support Connect to any public or private vector tile server Or just use the supplied and optimized OSM2VectorTiles based one Work offline and discover local VectorTile/MBTiles Compatible with most Linux and OSX terminals Highly optimized algorithms for a smooth experience…
n24usa.com
September 20, 2025 at 2:07 PM
Openlayers with geojson-vt, increase VectorTile layer resolution with renderMode: 'hybrid'
Sulla base dell'esempio ufficiale Openlayers pubblicato a questo indirizzo https://openlayers.org/en/latest/examples/geojson-vt.html ho costruito la mia mappa che rappresenta i laghi del sud america. Ecco il codice: import geojsonvt from 'geojson-vt'; import Map from 'ol/Map.js'; import View from 'ol/View.js'; import GeoJSON from 'ol/format/GeoJSON.js'; import VectorTileLayer from 'ol/layer/VectorTile.js'; import Projection from 'ol/proj/Projection.js'; import VectorTileSource from 'ol/source/VectorTile.js'; // Converts geojson-vt data to GeoJSON const replacer = function (key, value) { if (!value || !value.geometry) { return value; } let type; const rawType = value.type; let geometry = value.geometry; if (rawType === 1) { type = 'MultiPoint'; if (geometry.length == 1) { type = 'Point'; geometry = geometry[0]; } } else if (rawType === 2) { type = 'MultiLineString'; if (geometry.length == 1) { type = 'LineString'; geometry = geometry[0]; } } else if (rawType === 3) { type = 'Polygon'; if (geometry.length > 1) { type = 'MultiPolygon'; geometry = [geometry]; } } return { 'type': 'Feature', 'geometry': { 'type': type, 'coordinates': geometry, }, 'properties': value.tags, }; }; const layer = new VectorTileLayer({ background: '#1a2b39', style: { 'fill-color': ['string', ['get', 'COLOR'], '#eee'], }, }); const map = new Map({ layers: [layer], target: 'map', view: new View({ center: [0, 0], zoom: 2, }), }); const url = 'https://openlayers.org/data/vector/ecoregions.json'; fetch(url) .then(function (response) { return response.json(); }) .then(function (json) { const tileIndex = geojsonvt(json, { extent: 4096, debug: 1, }); const format = new GeoJSON({ // Data returned from geojson-vt is in tile pixel units dataProjection: new Projection({ code: 'TILE_PIXELS', units: 'tile-pixels', extent: [0, 0, 4096, 4096], }), }); const vectorSource = new VectorTileSource({ tileUrlFunction: function (tileCoord) { // Use the tile coordinate as a pseudo URL for caching purposes return JSON.stringify(tileCoord); }, tileLoadFunction: function (tile, url) { const tileCoord = JSON.parse(url); const data = tileIndex.getTile( tileCoord[0], tileCoord[1], tileCoord[2], ); const geojson = JSON.stringify( { type: 'FeatureCollection', features: data ? data.features : [], }, replacer, ); const features = format.readFeatures(geojson, { extent: vectorSource.getTileGrid().getTileCoordExtent(tileCoord), featureProjection: map.getView().getProjection(), }); tile.setFeatures(features); }, }); layer.setSource(vectorSource); }); In this way, the representation graphics are very grainy, but the zooms are fast: If I modify the VectorTileLayer by adding renderMode: 'vector', the graphics improve significantly, but the zoom becomes slow: How can I stay in renderMode: 'hybrid' while increasing the graphical quality rendered on the map?
gis.stackexchange.com
November 26, 2025 at 1:01 PM