MapView
The MapView
class is a subclass of View. This viewport creates a camera that looks at a geospatial location on a map from a certain direction. The behavior of MapView
is generally modeled after that of Mapbox GL JS.
It's recommended that you read the Views and Projections guide before using this class.
Constructor
import {MapView} from '@deck.gl/core';
const view = new MapView({id, ...});
MapView
takes the same parameters as the View superclass constructor, plus the following:
repeat
(boolean, optional)
Whether to render multiple copies of the map at low zoom levels. Default false
.
nearZMultiplier
(number, optional)
Scaler for the near plane, 1 unit equals to the height of the viewport. Default to 0.1
. Overwrites the near
parameter.
farZMultiplier
(number, optional)
Scaler for the far plane, 1 unit equals to the distance from the camera to the top edge of the screen. Default to 1.01
. Overwrites the far
parameter.
projectionMatrix
(number[16], optional)
Projection matrix.
If projectionMatrix
is not supplied, the View
class will build a projection matrix from the following parameters:
fovy
(number, optional)
Field of view covered by the camera, in the perspective case. In degrees. If not supplied, will be calculated from altitude
.
altitude
(number, optional)
Distance of the camera relative to viewport height. Default 1.5
.
orthographic
(boolean)
Whether to create an orthographic or perspective projection matrix. Default is false
(perspective projection).
View State
To render, MapView
needs to be used together with a viewState
with the following parameters:
longitude
(number) - longitude at the map centerlatitude
(number) - latitude at the map centerzoom
(number) - zoom levelpitch
(number, optional) - pitch angle in degrees. Default0
(top-down).bearing
(number, optional) - bearing angle in degrees. Default0
(north).maxZoom
(number, optional) - max zoom level. Default20
.minZoom
(number, optional) - min zoom level. Default0
.maxPitch
(number, optional) - max pitch angle. Default60
.minPitch
(number, optional) - min pitch angle. Default0
.position
(number[3], optional) - Viewport center offsets from lng, lat in meters. Default:[0,0,0]
.
Controller
By default, MapView
uses the MapController
to handle interactivity. To enable the controller, use:
const view = new MapView({id: 'base-map', controller: true});
Visit the MapController documentation for a full list of supported options.