8
セルフホスティングのMapboxベクタータイル
FOSS4Gでの講演で示されているように、Mapbox StudioはMapboxベクタータイルを作成し、それらを.mbtilesファイルとしてエクスポートすることができます。 mapbox-gl.jsライブラリはには、動的なスタイルを使用して、クライアント(ブラウザ)側にMapboxベクトルタイルをレンダリングすることができます。 欠けている部分:.mbtilesmapbox-gl.jsでそれらを使用できるように、Mapboxベクタータイル()を自己ホストするにはどうすればよいですか? Mapbox StudioはベクタータイルをMapboxサーバーにアップロードし、タイルをホストできることを知っています。しかし、それは私には選択肢ではありません。ベクタータイルを自分のサーバーでホストしたいのです。 以下のTileStreamアプローチは、行き止まりであることが判明しました。Tileliveを使用した実用的なソリューションの私の答えをご覧ください。 ファイルからイメージタイルを提供できるTileStreamを試しました.mbtiles。 私のウェブページはmapbox-gl v0.4.0を使用しています: <link href='https://api.tiles.mapbox.com/mapbox-gl-js/v0.4.0/mapbox-gl.css' rel='stylesheet' /> <script src='https://api.tiles.mapbox.com/mapbox-gl-js/v0.4.0/mapbox-gl.js'></script> JavaScriptスクリプトでmapboxgl.Mapを作成します。 var map = new mapboxgl.Map({ container: 'map', center: [46.8104, 8.2452], zoom: 9, style: 'c.json' }); c.jsonスタイルファイルは、ベクトルタイルソースを設定します。 { "version": 6, "sprite": "https://www.mapbox.com/mapbox-gl-styles/sprites/bright", "glyphs": "mapbox://fontstack/{fontstack}/{range}.pbf", "constants": { "@land": "#808080", "@earth": "#805040", "@water": "#a0c8f0", "@road": "#000000" …