Slowly fly to a location

Use flyTo with flyOptions to slowly zoom to a location.

NPM module setup


npm install --save @maptiler/sdk
import { Map, MapStyle, config } from '@maptiler/sdk';
import '@maptiler/sdk/dist/maptiler-sdk.css';

config.apiKey = 'YOUR_MAPTILER_API_KEY_HERE';
const start = [-74.5, 40];
const end = [74.5, 40];
const map = new Map({
    container: 'map',
    style: MapStyle.STREETS, 
    center: start,
    zoom: 9
});

let isAtStart = true;

document.getElementById('fly').addEventListener('click', function () {
    // depending on whether we're currently at point a or b, aim for
    // point a or b
    const target = isAtStart ? end : start;

    // and now we're at the opposite point
    isAtStart = !isAtStart;

    map.flyTo({
        // These options control the ending camera position: centered at
        // the target, at zoom level 9, and north up.
        center: target,
        zoom: 9,
        bearing: 0,

        // These options control the flight curve, making it move
        // slowly and zoom out almost completely before starting
        // to pan.
        speed: 0.2, // make the flying slow
        curve: 1, // change the speed at which it zooms out

        // This can be any easing function: it takes a number between
        // 0 and 1 and returns another number between 0 and 1.
        easing: function (t) {
            return t;
        },

        // this animation is considered essential with respect to prefers-reduced-motion
        essential: true
    });
});
Fit to the bounds of a lineString

Fit to the bounds of a lineString

Examples

Get the bounds of a lineString.

Fit a map to a bounding box

Fit a map to a bounding box

Examples

Fit map to a specific area using fitBounds method.

Jump to a series of locations

Jump to a series of locations

Examples

Use the jumpTo function to showcase multiple locations.

Create a story map, fly to a location based on the scroll position

Fly to a location based on the scroll position

Examples

Fly to locations on the map by scrolling.

Was this helpful?