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