16c62a97d5
- 新增时标、ΔT 模型、质心时间与 UT1 支持 - 改进日月食、月掩、行星事件及路径边界计算 - 完善恒星三维自行与动态距离传播 - 扩展 SVG、GeoJSON、KML 输出与底层距离换算工具 - 整理中英文手册、示例资源及回归测试
30 lines
885 B
Go
30 lines
885 B
Go
package moon
|
|
|
|
import (
|
|
"time"
|
|
|
|
"b612.me/astro/basic"
|
|
)
|
|
|
|
// Semidiameter 月亮视半径,单位角秒 / apparent lunar semidiameter in arcseconds.
|
|
func Semidiameter(date time.Time) float64 {
|
|
return SemidiameterN(date, -1)
|
|
}
|
|
|
|
// SemidiameterN 月亮视半径(截断版),单位角秒 / truncated apparent lunar semidiameter in arcseconds.
|
|
func SemidiameterN(date time.Time, n int) float64 {
|
|
jd := basic.Date2JD(date.UTC())
|
|
return basic.MoonSemidiameterN(basic.UTC2TT(jd), n)
|
|
}
|
|
|
|
// Diameter 月亮视直径,单位角秒 / apparent lunar diameter in arcseconds.
|
|
func Diameter(date time.Time) float64 {
|
|
return DiameterN(date, -1)
|
|
}
|
|
|
|
// DiameterN 月亮视直径(截断版),单位角秒 / truncated apparent lunar diameter in arcseconds.
|
|
func DiameterN(date time.Time, n int) float64 {
|
|
jd := basic.Date2JD(date.UTC())
|
|
return basic.MoonDiameterN(basic.UTC2TT(jd), n)
|
|
}
|