deck.glでカメラ移動をアニメーションする。

この記事はdeck.gl Advent Calendar 2021 参加記事です。

概要

deck.glでは、viewStateを変更することで地図上の表示領域を変更できます。更新するviewStateにトランジションの設定を行うことで、ある地点からある地点への移動をアニメーションして描画することができます。

サンプルコード

解説

viewState(カメラ設定)の更新を行う際に、新規のviewStateにtransitionDurationプロパティを含めて更新すると現在設定されている値と更新されるviewStateの値の間を値を補完してアニメーションが行われます。また、transitionInterpolatorプロパティでイージングの種類を設定できます。

ここでは、FlyToInterpolator関数を使って “Fly To”スタイル(現在位置から一旦パンして移動し目的地にズームする)のイージングを指定しています。