
When combined with geospatial views, the positions are treated as common space coordinates for that particular projection mode. It is the default coordinate system when rendering into non-geospatial views.

Once positions are in the common space, it is safe to add, substract, rotate, scale and extrude them as 3D vectors using standard linear algebra. To correctly compose data from various world spaces together, deck.gl transforms them into common space - a unified, intermediate 3D space that is a right-handed Cartesian coordinate system. It is common for an application to overlay multiple datasets from different world spaces into the same 3D view. Positions in different world spaces come with different scales and orientations, may be measured relative to static or dynamic reference points, and in many cases their scales are not linear. Some examples of different world space definitions include a Shapefile with any standard geospatial reference WGS84 as used by GeoJSON or KML GPS traces LIDAR scans info-vis values that do not map to real-world dimensions Slippy Map tiles from services like OpenStreetMaps and Mapbox 3D tiling standards such as Cesium 3D Tiles and Esri I3S. It is usually determined by the source of the data, like the device it is generated on, and the format that it is stored as on disk or a cloud data warehouse. The natural coordinate system of a dataset. Throughout this document you will find reference to the following coordinate spaces in deck.gl's projection system: World space A layer can leverage such props to control its appearance in a way that makes the most sense for the data and the desired user experience. Many layers also provide props for defining the units that dimensions are measured in, usually named as *Units.

Layers using different coordinate systems can be composed together, which is very useful when dealing with datasets from different sources. Each layer can set its own coordinateSystem prop to specify how its positions should be interpreted. Positions and dimensions are used to construct a 3D world with your data.ĭeck.gl supports a selection of coordinate systems, addressing diverse geospatial and non-geospatial use cases.


the radius of a circle, the width of a path, etc), most of which are specified as a single number. Positions are expected to be supplied as two or three element arrays ( or ). the center of a point, or the start and end of an arc, the vertices of a polygon, etc). In most deck.gl layers, every data object is expected to contain one or more positions (e.g.
