Create a globe map with ocean bathymetry terrain elevation
Show a detailed 3D globe map of the ocean’s seafloor and its bathymetry.
Increase the authenticity of your web mapping applications and data by using the globe projection and incorporating ocean relief into your maps. This will provide a greater sense of realism and depth to your visuals.
NPM module setup
npm install --save @maptiler/sdk
import { Map, config } from '@maptiler/sdk';
import '@maptiler/sdk/dist/maptiler-sdk.css';
config.apiKey = 'YOUR_MAPTILER_API_KEY_HERE';
const map = new Map({
container: 'map', // container's id or the HTML element to render the map
style: 'ocean',
maxPitch: 85,
center: [165.9043, 54.7078], // starting position [lng, lat]
zoom: 10.04, // starting zoom
bearing: -33.2,
pitch: 72,
projection: 'globe' //enable globe projection
});
map.on('load', function() {
map.addSource("bathymetry", {
type: 'raster-dem',
url: 'https://api.maptiler.com/tiles/ocean-rgb/tiles.json',
});
map.setTerrain({ source: 'bathymetry', exaggeration: 1.5 });
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="robots" content="noindex">
<title>Create a globe map with ocean bathymetry terrain elevation | NPM example</title>
<link rel="stylesheet" href="./style.css">
</head>
<body>
<div id="map"></div>
<script type="module" src="./main.js"></script>
</body>
</html>
body { margin: 0; padding: 0; }
#map { position: absolute; top: 0; bottom: 0; width: 100%; }
Related examples
Projection control (globe)
TutorialsToggle between Mercator and globe projections using map controls.
Switch between “mercator” and “globe”
ExamplesProgrammatically switch between Mercator and globe map projections.