← 全部作品

Web · PWA · Android · 鸿蒙

河图与近太阳系Hetu & Near Solar System

河图讲数,天文讲象。这个项目试着把两张图叠在一起:用真实算出来的太阳系位置,去读一张流传千年的图——抬头之前先在屏幕上认一遍,今夜该往哪个方向看,能看见哪一颗。

手机浏览器打开后可「添加到主屏幕」当 PWA 用;实景寻星需要传感器与相机权限,请在 HTTPS 或 localhost 下访问。

形态
桌面 Web / PWA / Android / 鸿蒙
历算
原生 JS 实时计算,误差 ±1 角分
视角
轨道 · 地心天球 · AR 实景
校验
对标 astronomy-engine

它是什么

一个可以在手上转动的太阳系,也是一个「今晚该看什么」的出门指南。行星位置不是示意图,是按时间实时算出来的;放大到圆面能看清相位,播放一年的时间机器能看到它们怎么绕回来。

另一半是河图。生数与成数、五方与五行、数与象的对应,这些抽象的关系被挂在真实的五星位置上:哪一颗在哪个方位、什么时辰合适看、这一课对应哪一句——不是玄谈,是可以今晚下楼验证的。

把「数」放回天上,把「象」落到脚下。

市面上星官显示与黄历择日是两条割裂的赛道,「河图象数 × 真实天象」还没有人产品化。这个项目的差异化就在这里:不是再加一层视觉堆料,而是让两套语言互相指认。

功能

真实位置,三档尺度

同一套实算位置,三种「看起来的大小」:真实轨道比例、便于观察的放大比例、以及圆面特写。尺度切换不改变位置,只改变你怎么看。

双视角

轨道视角从黄道面俯看整个系统;地球视角换成地心天球,星星挂在你头顶那颗球上,和抬头看到的一致。

AR 实景寻星

打开相机与方向传感器,屏幕上的星位随手机转动对齐真实天空。先认位置,再抬头——比对着文字描述找星快得多。

今夜最佳方位

结合当前时刻与地平高度给出「何时、朝哪、找什么」,六步走完一个观测窗口,不需要先学赤道坐标。

天象日历与观星指数

合、冲、凌日、日月食、流星雨、超级月亮,未来三十天可查;观星指数给出今夜的观测条件判断。

河图·五星研习课

十数图与生克、五方配五行、宿位与地平读法,每一节都落回屏幕上的真实天体,可以对着天空核对。

时间机器

1 / 5 / 30 / 120 天每秒,正放倒放,一键播放一年。看会合周期比读定义直观得多。

星官与星等

三垣二十八宿的中式星官体系与西方星座并存,亮星带星等标注;标签密度可调,不会糊成一片。

算得准不准

历算全部在前端完成,用原生 JS、零数据文件,不依赖几十 MB 的历表。为了确认它可信,项目里有一套对标校验,拿成熟的天文库当基准:

日月食时刻误差 不超过 2.9 分钟,凌日不超过 2 小时,流星雨黄经不超过 5 分钟,超级月亮的距离差 64 公里。这些数字写在验证脚本里,每次改动都会重跑。

唯一被示意的地方是太阳与行星的球体半径——真实比例下它们会小到看不见。位置、轨道、相位、升落时刻全部实算,界面上会明确标出哪一处不是。

技术上的几个选择

桌面版、手机网页、Android 与鸿蒙共用同一份 Web 核心,原生壳只负责 WebView 容器与硬件桥(传感器、定位、相机权限、震动、常亮),页面逻辑不复制、不漂移。壳里的 www/ 是生成物,同步脚本一跑就位。

渲染用 Three.js,星点用批量点云而不是几万个独立对象; Service Worker 负责离线缓存,版本号改动后自动换新,避免旧缓存把新版本挡住。

平台与获取

  • Web / PWA 浏览器直接打开,可添加到主屏幕离线使用 打开网页版
  • Android 系统 WebView 壳,接入传感器与相机,Android 7 以上 下载 APK · 583 KB
  • 鸿蒙 ArkWeb 壳,已签测试证书,模拟器可装;零售机需换华为证书 可按需提供
  • 桌面 Chrome / Edge 全屏打开,键盘快捷键可切换尾迹、轨道、标签 打开网页版