getJulianDay method
获取儒略日
Implementation
JulianDay getJulianDay() {
int y = year;
int m = month;
if (m <= 2) {
m += 12;
y -= 1;
}
int b = 0;
if (y * 10000 + m * 100 + day >= 15821015) {
int a = (y / 100).floor();
b = 2 - a + (a / 4).floor();
}
double jd =
(365.25 * (y + 4716)).floor() +
(30.6001 * (m + 1)).floor() +
day +
b -
1524.5;
// 加上时分秒的部分
jd += hour / 24.0 + minute / 1440.0 + second / 86400.0;
return JulianDay(jd);
}