Die Daten selbst basieren auf OpenStreetMap und wurden für die Darstellung in niedrigen Zoomstufen durch Aggregation, Clustering und Simplifizierung zusätzlich optimiert. Die verfügbare räumliche Ausdehnung ist Deutschland, sowie Teile der umliegenden Länder.
PMTiles ist ein etabliertes Protokoll für Kartenkacheln, das inzwischen vielen Kartenbibliotheken unterstützt wird. Grundsätzlich funktioniert das Protokoll mittels HTTP-Range Requests, mittels derer die Kacheln vom Client direkt aus einer großem PMTiles extrahiert werden. Allgemeine Dokumentation und Beispiele hierzu sind in der offiziellen Dokumentation zu finden.
Grundsätzlich werden Kacheln im PMTiles-Protokol wie auch in dem klassischen Protokoll mit individuellen URLs
für jede Kachel (http://.../Z/X/Y) angeboten. Falls möglich sollte PMTiles präferiert
werden.
Die Urls zu den jeweiligen Styles mit dem jeweils bevorzugten Protokoll können der Sidebar der obigen Karte entnommen werden.
| PMTiles URL | Tiles URL | Publiziert am |
|---|
// add the PMTiles plugin to the maplibregl global.
const protocol = new pmtiles.Protocol();
maplibregl.addProtocol('pmtiles', protocol.tile);
const map = new maplibregl.Map({
container: 'map',
style: '', // Stylesheet - siehe "Style URL" oben
center: [11.55, 48.15],
zoom: 15 // initialer Zoom
});
Siehe auch den Quelltext dieser Seite.
import Map from 'ol/Map.js';
import View from 'ol/View.js';
import {MapboxVectorLayer} from 'ol-mapbox-style';
import {useGeographic} from 'ol/proj';
import {register} from 'pmtiles-protocol';
useGeographic();
const unregister = register();
const map = new Map({
target: 'map',
layers: [
new MapboxVectorLayer({
styleUrl: '',
})
],
view: new View({
center: [11.55, 48.15],
zoom: 15,
}),
});
OpenLayers unterstützt keine 3D-Darstellung.
Da die Daten aus OpenStreetMap stammen, sind sie unter der OpenStreetMap Lizenz lizenziert. Diese Lizenz erfordert, dass bei Verwendung der Daten die Quelle angegeben wird - wie das zu tun ist siehe vorigen Link.