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.
import {MapView} from '@deck.gl/core';
const view = new MapView({id, ...});
MapView
takes the same parameters as the View superclass constructor, plus the following:
Whether to render multiple copies of the map at low zoom levels. Default false
.
Scaler for the near plane, 1 unit equals to the height of the viewport. Default to 0.1
. Overwrites the near
parameter.
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.
Projection matrix.
If projectionMatrix
is not supplied, the View
class will build a projection matrix from the following parameters:
Field of view covered by the camera, in the perspective case. In degrees. If not supplied, will be calculated from altitude
.
Distance of the camera relative to viewport height. Default 1.5
.
Whether to create an orthographic or perspective projection matrix. Default is false
(perspective projection).
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]
.
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.