feat(earth): toolbar and zoom improvements
- Add box-sizing/padding normalization to toolbar buttons - Remove zoom slider, implement click/hold zoom behavior (+/- buttons) - Add 10% step on click, 1% continuous on hold - Fix satellite init: show satellite points immediately, delay trail visibility - Fix breathing effect: faster pulse, wider opacity range - Add toggle-cables functionality with visibility state - Initialize satellites and cables as visible by default
This commit is contained in:
@@ -7,8 +7,9 @@ import { CONFIG, SATELLITE_CONFIG } from './constants.js';
|
||||
let satellitePoints = null;
|
||||
let satelliteTrails = null;
|
||||
let satelliteData = [];
|
||||
let showSatellites = false;
|
||||
let showSatellites = true;
|
||||
let showTrails = true;
|
||||
let trailsReady = false;
|
||||
let animationTime = 0;
|
||||
let selectedSatellite = null;
|
||||
let satellitePositions = [];
|
||||
@@ -320,6 +321,10 @@ export function updateSatellitePositions(deltaTime = 0) {
|
||||
|
||||
satelliteTrails.geometry.attributes.position.needsUpdate = true;
|
||||
satelliteTrails.geometry.attributes.color.needsUpdate = true;
|
||||
|
||||
if (!trailsReady && count > 0 && satellitePositions[0]?.trail.length >= TRAIL_LENGTH) {
|
||||
trailsReady = true;
|
||||
}
|
||||
}
|
||||
|
||||
export function toggleSatellites(visible) {
|
||||
@@ -328,14 +333,14 @@ export function toggleSatellites(visible) {
|
||||
satellitePoints.visible = visible;
|
||||
}
|
||||
if (satelliteTrails) {
|
||||
satelliteTrails.visible = visible && showTrails;
|
||||
satelliteTrails.visible = visible && showTrails && trailsReady;
|
||||
}
|
||||
}
|
||||
|
||||
export function toggleTrails(visible) {
|
||||
showTrails = visible;
|
||||
if (satelliteTrails) {
|
||||
satelliteTrails.visible = visible && showSatellites;
|
||||
satelliteTrails.visible = visible && showSatellites && trailsReady;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user