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

visgl / deck.gl / 33349560767
82%

Build:
DEFAULT BRANCH: master
Ran 31 Aug 2026 02:12AM 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 02:05AM UTC coverage: 82.338% (+0.07%) from 82.269%
33349560767

push

github

web-flow
fix(core): rotate GlobeView like a ball through poles (#10598)

* 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 u... (continued)

8724 of 11130 branches covered (78.38%)

Branch coverage included in aggregate %.

45 of 54 new or added lines in 3 files covered. (83.33%)

2 existing lines in 2 files now uncovered.

15159 of 17876 relevant lines covered (84.8%)

18107.94 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
85.2
6.71% modules/core/src/controllers/globe-controller.ts
3
57.14
7.76% modules/core/src/viewports/globe-utils.ts

Coverage Regressions

Lines Coverage ∆ File
1
85.2
6.71% modules/core/src/controllers/globe-controller.ts
1
94.98
-0.84% modules/core/src/viewports/viewport.ts
Jobs
ID Job ID Ran Files Coverage
1 33349560767.1 31 Aug 2026 02:12AM UTC 420
82.34
GitHub Action Run
Source Files on build 33349560767
  • Tree
  • List 420
  • Changed 7
  • Source Changed 3
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #33349560767
  • 93f0fe01 on github
  • Prev Build on master (#33348663483)
  • Next Build on master (#33394645019)
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