zakjan / deck.gl-leaflet

deck.gl plugin for Leaflet
https://zakjan.github.io/deck.gl-leaflet/
MIT License
34 stars 11 forks source link

deck.gl zoom animation is behind Leaflet animation #1

Closed zakjan closed 3 years ago

zakjan commented 3 years ago

https://user-images.githubusercontent.com/173585/114974887-8be6df80-9e83-11eb-96cc-449c687f339a.mp4

See https://stackoverflow.com/questions/67101212/calculating-fractional-zoom-using-leaflet/67107000 for details.

vissharm commented 3 years ago

Is it not possible to hide the markers in zoom-start/drag-start and then show them back in zoom-end/drag-end ?

zakjan commented 3 years ago

Drag is fine, the issue is with zoom only, because Leaflet uses cubic-bezier transformation in CSS for zoom.

Hiding is possible, but in this integration case, Leaflet is the main library (with possibly other layers, not just markers), and deck.gl is only secondary. If I were to resort to hiding, I'd hide deck.gl layer instead.

vissharm commented 3 years ago

I din't get the part - DeckGL is secondary library. I think you whole purpose would be to create markers/polylines in the deckGL (deckGL objects) layer to improve performance by drawing with WebGL. Projections and its reverse is handled by DeckGL also. What benefit here leaflet providing??? want to understand?

zakjan commented 3 years ago

For a new project, it's surely better to start without Leaflet for the reasons you highlighted. The purpose of this library is 1) to allow enriching a pre-existing Leaflet application by adding a deck.gl visualization layer as easily as possible, and 2) potentially to support a step-by-step transition from Leaflet to deck.gl.

I'm going to explore the solution suggested in the SO link above in a couple of days.

vissharm commented 3 years ago

make sense

zakjan commented 3 years ago

Fixed in 1.1.0, thanks to the tips in the SO answer by @IvanSanchez.