• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

visgl / deck.gl / 33348663483
82%

Build:
DEFAULT BRANCH: master
Ran 31 Aug 2026 01:55AM UTC
Jobs 1
Files 420
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

31 Aug 2026 01:47AM UTC coverage: 82.269% (+0.03%) from 82.241%
33348663483

push

github

web-flow
feat(core): support pointer-anchored zoom in GlobeView (#10385)

* feat(core): add GlobeView pointer zoom option

* feat(core): anchor LinearInterpolator transitions on GlobeViewport

Replace the `log.warn('around not supported in GlobeView')` no-op
with real spherical anchoring, mirroring the existing planar branch:
- `initializeProps`: when the start viewport is a GlobeViewport and the
  screen anchor falls on the globe (`isPointOnGlobe`), unproject it to
  lng/lat and stash it as `aroundLngLat`.
- `interpolateProps`: each frame, call `panByGlobeAnchor(aroundLngLat,
  lerp(start.around, end.around, t))` so the geographic point stays
  pinned under the anchor screen point during the transition.

This makes the `_onDoubleClick` zoom transition (`_getTransitionProps
({around: pos})`) actually anchor on GlobeView. Previously the warn
fired and the LERP ran without anchor maintenance, which read as a
center-anchored zoom-in regardless of where the user tapped.

Tests cover the on-globe anchored path and the off-globe fall-through.

* refactor(core): tidy GlobeViewport anchor helpers

- Consolidate stray imports at the top of the file.
- Document the two GLOBE_ZOOM_ANCHOR_* constants so the empirical
  damping behavior (start damping at 0.75 of the limb, never below
  35% strength) is self-explanatory.
- Add a JSDoc to _getRayToGlobe explaining it as the shared ray/sphere
  math helper for unproject + isPointOnGlobe + panByGlobeAnchor.

* fix(core): apply updated GlobeView zoom anchor option

* fix(core): stabilize GlobeView pointer zoom

* fix(core): address globe zoom review feedback

* fix(core): recover globe pointer zoom anchors

* fix(core): always set GlobeState.zoomAround (fix HMR pointer-zoom dropout)

Per #10307 review: zoomAround is a config option that always needs a value,
unlike the transient gesture anchors guarded the same way. The !== undefined
guard let a partial-props / HMR reconstruction drop the key, so
_shouldZoomAroundPointer() saw ... (continued)

8709 of 11121 branches covered (78.31%)

Branch coverage included in aggregate %.

56 of 62 new or added lines in 3 files covered. (90.32%)

15139 of 17867 relevant lines covered (84.73%)

18118.63 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
90.96
0.12% modules/core/src/viewports/globe-viewport.ts
Jobs
ID Job ID Ran Files Coverage
1 33348663483.1 31 Aug 2026 01:55AM UTC 420
82.27
GitHub Action Run
Source Files on build 33348663483
  • Tree
  • List 420
  • Changed 6
  • Source Changed 3
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #33348663483
  • 8126bb90 on github
  • Prev Build on master (#33341481754)
  • Next Build on master (#33349560767)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc