Skip to content

The map keeps zooming in. #1

@Aeshan-Rosa

Description

@Aeshan-Rosa

Cesium Auto-Zoom Bug Report

Summary

The Cesium map continuously zooms in without user intent. After loading the app, the camera altitude keeps decreasing and the view eventually becomes unusable (black/sky view or extreme close-up). This prevents normal pan and inspect interactions and makes layer/entity workflows difficult to use.


Environment

Application

  • WorldView-Lite frontend

Stack

  • React
  • Vite
  • TypeScript
  • CesiumJS

Frontend URL

http://localhost:5173

Backend

http://localhost:8000

Platform

  • macOS
  • Trackpad / mouse input

Steps to Reproduce

  1. Start the backend server.
  2. Start the frontend application.
  3. Open the application in the browser:
http://localhost:5173
  1. Wait a few seconds after the map loads.

  2. Optionally interact with the map:

    • Scroll
    • Double click
    • Trackpad gestures
    • Select a track/entity
  3. Observe the camera zoom behavior.


Expected Result

  • The map remains stable when the user is idle.

  • Zoom only occurs when the user explicitly performs a zoom action.

  • Camera altitude stays within reasonable limits.

  • The map remains usable for:

    • Panning
    • Inspecting objects
    • Viewing tracks
    • Managing layers

Actual Result

  • The map repeatedly zooms in automatically.

  • Camera altitude continuously decreases.

  • Eventually results in:

    • Black / sky view
    • Extreme close-up view
  • User must frequently reset the camera manually.


Impact

This issue blocks core user experience features:

  • Object inspection
  • Layer toggling
  • Track viewing
  • General map navigation

It causes confusion for users and makes the interface difficult to operate.


Suspected Causes

Possible sources of the issue include:

1. Cesium Default Zoom Gesture Handling

  • Mouse wheel zoom
  • Trackpad pinch gestures
  • Double-click zoom

2. Programmatic Camera Updates

Camera functions may be triggered during updates:

  • camera.flyTo()
  • viewer.zoomTo()
  • viewer.camera.setView()

This might occur during:

  • Track updates
  • Entity updates
  • Data refresh cycles

3. Camera Feedback Loops

A listener or clamp system may be forcing camera updates repeatedly:

Examples:

  • Camera position listener
  • Altitude clamp logic
  • Entity tracking callbacks

Acceptance Criteria

The issue will be considered resolved when:

  • The map does not zoom automatically when the user is idle.
  • Zoom occurs only through explicit user input or controlled UI actions.
  • Camera altitude remains within configured minimum and maximum limits.
  • Track queries and live updates do not trigger camera zoom behavior.
  • The reproduction steps described above no longer produce the issue.

Notes

This bug significantly affects usability of the Cesium map interface and should be prioritized for stabilization of the camera control system.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions