これが私がやっていることです: マップ上のマーカーをクリックしてサイド パネルを開き、マップをマーカーの中央に配置します。サイド パネルは、画面の右側の 3/4 を占めます。
これは私が起こる必要があることです: パネルが開いた後に残っているビューポートの 1/4 に従ってマーカーを中央に配置します。
マーカーのピクセル座標を取得し、パネルがアニメーション表示されている間に変換する必要がある場所の計算を行うことができます。問題は、オブジェクトflyTo()
のみを受け入れLngLatLike
、ピクセル座標を緯度と経度に変換できないことです。containerPointToLatLng()
Leaflet.js には、 Mapbox GL に切り替える前に便利だったという関数があります。
Mapbox GLの拡張性を考えると、その新しさにもかかわらず、これが可能性であると想像することしかできません。しかし、どのように?