feat: 完善时标与天象几何计算并扩展输出接口

- 新增时标、ΔT 模型、质心时间与 UT1 支持
- 改进日月食、月掩、行星事件及路径边界计算
- 完善恒星三维自行与动态距离传播
- 扩展 SVG、GeoJSON、KML 输出与底层距离换算工具
- 整理中英文手册、示例资源及回归测试
This commit is contained in:
2026-09-23 18:55:12 +08:00
parent 1f31a9b5b5
commit 16c62a97d5
503 changed files with 33290 additions and 9471 deletions
@@ -23,7 +23,7 @@ var solarEclipseCatalogueCentralDurations = []struct {
func TestSolarEclipseCentralDurationMatchesCatalogue(t *testing.T) {
for _, item := range solarEclipseCatalogueCentralDurations {
seed := JDECalc(item.date[0], item.date[1], float64(item.date[2]))
seed := JDCalc(item.date[0], item.date[1], float64(item.date[2]))
result := SolarEclipseNASABulletinSplitK(seed)
if !result.HasCentral {
t.Fatalf("%04d-%02d-%02d is not a central eclipse", item.date[0], item.date[1], item.date[2])
@@ -54,7 +54,7 @@ func TestSolarEclipsePathWidthStaysPhysical(t *testing.T) {
{[3]int{1874, 10, 10}, true},
}
for _, item := range cases {
seed := JDECalc(item.date[0], item.date[1], float64(item.date[2]))
seed := JDCalc(item.date[0], item.date[1], float64(item.date[2]))
path := SolarEclipseCentralPathNASABulletinSplitK(seed, SolarEclipsePathOptions{})
if len(path.CenterLine) == 0 {
t.Fatalf("%04d-%02d-%02d exported no center line", item.date[0], item.date[1], item.date[2])