63bool QJulianCalendar::dateToJulianDay(
int year,
int month,
int day, qint64 *jd)
const
66 if (!isDateValid(year, month, day))
69 const auto yearDays = yearMonthToYearDays(year, month);
70 *jd = qDiv<4>(FourYears * yearDays.year) + yearDays.days + day + JulianBaseJd;
74QCalendar::YearMonthDay QJulianCalendar::julianDayToDate(qint64 jd)
const
76 const auto year4Day = qDivMod<FourYears>(4 * (jd - JulianBaseJd) - 1);
78 const auto ymd = dayInYearToYmd(qDiv<4>(year4Day.remainder));
79 const int y = year4Day.quotient + ymd.year;
80 return QCalendar::YearMonthDay(y > 0 ? y : y - 1, ymd.month, ymd.day);