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
Stack
- React
- Vite
- TypeScript
- CesiumJS
Frontend URL
Backend
Platform
- macOS
- Trackpad / mouse input
Steps to Reproduce
- Start the backend server.
- Start the frontend application.
- Open the application in the browser:
-
Wait a few seconds after the map loads.
-
Optionally interact with the map:
- Scroll
- Double click
- Trackpad gestures
- Select a track/entity
-
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.
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
Stack
Frontend URL
Backend
Platform
Steps to Reproduce
Wait a few seconds after the map loads.
Optionally interact with the map:
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:
Actual Result
The map repeatedly zooms in automatically.
Camera altitude continuously decreases.
Eventually results in:
User must frequently reset the camera manually.
Impact
This issue blocks core user experience features:
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
2. Programmatic Camera Updates
Camera functions may be triggered during updates:
camera.flyTo()viewer.zoomTo()viewer.camera.setView()This might occur during:
3. Camera Feedback Loops
A listener or clamp system may be forcing camera updates repeatedly:
Examples:
Acceptance Criteria
The issue will be considered resolved when:
Notes
This bug significantly affects usability of the Cesium map interface and should be prioritized for stabilization of the camera control system.