From 50a417ca8355d1f13237f69cc0ba11905314bd8b Mon Sep 17 00:00:00 2001 From: linkong Date: Fri, 24 Apr 2026 17:50:43 +0800 Subject: [PATCH] release: bump version to 0.40.2 --- VERSION | 2 +- docs/CHANGELOG.md | 8 ++++++++ docs/version-history.md | 3 ++- frontend/package.json | 2 +- frontend/public/earth/js/constants.js | 2 +- frontend/public/earth/js/main.js | 2 ++ frontend/public/earth/js/satellites.js | 9 +++++++++ pyproject.toml | 2 +- uv.lock | 2 +- 9 files changed, 26 insertions(+), 6 deletions(-) diff --git a/VERSION b/VERSION index 4f14f0cd..c3c6b0da 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.40.1 \ No newline at end of file +0.40.2 \ No newline at end of file diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 137a0aaf..179eef05 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -10,6 +10,14 @@ This project follows the repository versioning rule: ## [0.39.0] — 2026-04-24 +## [0.40.2] — 2026-04-24 + +### 🔧 Improvements +- 卫星点大小随镜头缩放动态调整,拉近变大、拉远变小,响应与相机距离线性对应 +- 调小卫星点默认基础尺寸(dotSize 2.8),缩放范围更合理 + +--- + ## [0.40.1] — 2026-04-24 ### 🔧 Improvements diff --git a/docs/version-history.md b/docs/version-history.md index a4a2893a..89fb1eb3 100644 --- a/docs/version-history.md +++ b/docs/version-history.md @@ -16,12 +16,13 @@ ## Current Version - `main` 当前主线历史推导到:`0.16.5` -- `dev` 当前开发分支历史推导到:`0.40.1` +- `dev` 当前开发分支历史推导到:`0.40.2` ## Timeline | Version | Type | Branch | Commit | Summary | | --- | --- | --- | --- | --- | +| `0.40.2` | improvement | `dev` | `pending` | 卫星点大小随镜头缩放动态调整,调小默认基础尺寸 | | `0.40.1` | improvement | `dev` | `pending` | 卫星选中标记配色跟随图例,修复 footprint 遮蔽卫星渲染问题,修复选中海缆误触发卫星高亮 | | `0.40.0` | feature | `dev` | `pending` | Earth 卫星 footprint 按星座能力分层,Iridium 独立 coverage ring 落地,卫星详情卡补齐覆盖能力与当前显示说明 | | `0.39.0` | feature | `dev` | `pending` | 后端统一结构化日志地基落地,系统日志页重构为紧凑日志工作台,并修复 Earth 移动端态势抽屉与新闻详情同步问题 | diff --git a/frontend/package.json b/frontend/package.json index 431d7e83..bd80ad1e 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "planet-frontend", - "version": "0.40.1", + "version": "0.40.2", "private": true, "packageManager": "bun@1", "dependencies": { diff --git a/frontend/public/earth/js/constants.js b/frontend/public/earth/js/constants.js index 6b023d33..05e1d8f6 100644 --- a/frontend/public/earth/js/constants.js +++ b/frontend/public/earth/js/constants.js @@ -283,7 +283,7 @@ export const SATELLITE_CONFIG = { displayAltitudeOffset: 8, frontFacingDotThreshold: 0.015, overlayRenderOrder: 12, - dotSize: 4, + dotSize: 2.8, ringSize: 0.07, apiPath: '/api/v1/visualization/geo/satellites', breathingSpeed: 0.08, diff --git a/frontend/public/earth/js/main.js b/frontend/public/earth/js/main.js index 8fb8274b..8741740d 100644 --- a/frontend/public/earth/js/main.js +++ b/frontend/public/earth/js/main.js @@ -92,6 +92,7 @@ import { getRelatedSatelliteIndicesForRegions, updateRelatedSatelliteHighlights, updateBreathingPhase, + updateSatellitePointSize, isSatelliteFrontFacing, setSatelliteCamera, setSatelliteSunDirection, @@ -3125,6 +3126,7 @@ function animate() { updateSatellitePositions(deltaTime); updateBreathingPhase(deltaTime); + updateSatellitePointSize(); updateRelatedSatelliteHighlights(); updateCelestialLayer(new Date(), camera); const currentSunDirection = getSunDirection(); diff --git a/frontend/public/earth/js/satellites.js b/frontend/public/earth/js/satellites.js index 457395ff..05226f52 100644 --- a/frontend/public/earth/js/satellites.js +++ b/frontend/public/earth/js/satellites.js @@ -82,6 +82,7 @@ const LOCKED_HALO_PIXEL_RADIUS = 24; const FILLED_TEXTURE_RADIUS_RATIO = 0.28; const LOCKED_RING_IDLE_SCALE = 0.68; const LOCKED_RING_IDLE_OPACITY = 0.92; +const DOT_ZOOM_SCALE_POWER = 1; const EARTH_RADIUS_KM = 6378.137; const GROUND_FOOTPRINT_MIN_ELEVATION_DEG = 25; const GROUND_FOOTPRINT_RADIUS_OFFSET = 0.72; @@ -193,6 +194,14 @@ export function updateBreathingPhase(deltaTime = 16) { breathingPhase += SATELLITE_CONFIG.breathingSpeed * (deltaTime / 16); } +export function updateSatellitePointSize() { + if (!satellitePoints || !cameraRef) return; + const camDist = cameraRef.position.length(); + const zoomScale = Math.pow(CONFIG.defaultCameraZ / Math.max(camDist, 1), DOT_ZOOM_SCALE_POWER); + satellitePoints.material.size = SATELLITE_CONFIG.dotSize * zoomScale; + satelliteBackdropPoints.material.size = SATELLITE_CONFIG.dotSize * 1.28 * zoomScale; +} + function getBreathingPulse(phase) { return 0.5 + 0.5 * Math.sin(phase); } diff --git a/pyproject.toml b/pyproject.toml index d5517177..fdffb19f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "planet" -version = "0.40.1" +version = "0.40.2" description = "智能星球计划 - 态势感知系统" requires-python = ">=3.14" dependencies = [ diff --git a/uv.lock b/uv.lock index 81215bc6..ee2d1c82 100644 --- a/uv.lock +++ b/uv.lock @@ -475,7 +475,7 @@ wheels = [ [[package]] name = "planet" -version = "0.40.1" +version = "0.40.2" source = { virtual = "." } dependencies = [ { name = "aiofiles" },