Skip to content

[Feat] MapboxLayer / MapboxOverlay integration with globe projection #7920

@Beilinson

Description

@Beilinson

Target Use Case

In my organization we are required to use the Globe projection for our maps. Recently I stumbled upon the deck.gl library and would love to use it for the potential in additional 3D visualization it provides on top of mapbox.

However we quickly realized that although mapbox supports custom layers in globe view, the deck.gl layers don't update according to the projection which provides for some silly looking bugs like this one:

screen-capture.1.mp4

We'd love to contribute to the deck.gl library and get this behavior fixed, where should we look to begin with?

Proposal

The mapbox globe projection is an adaptive projection which gradually morphs from the 3d globe to a 2d mercator projection between zoom levels 6-8. Seeing as these are arbitrary numbers which could be changed in the future, the MapboxLayer / MapboxOverlay integration should always update its projection matrix (and any other dependent properties) by the current zoom projection so that it stays accurate. All points without height should also clamp to the spheroid, while datasources with height should be offset from the spheroid rather than the 2d plane in mercator projection.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions