Stellarium
0.20.4
|
The Maya Tzolkin was a 260-day calendar consisting of a 13-day count and a 20-name count. More...
#include <MayaTzolkinCalendar.hpp>
Public Member Functions | |
MayaTzolkinCalendar (double jd) | |
virtual void | retranslate () Q_DECL_OVERRIDE |
Translate e.g. stringlists of part names. | |
virtual void | setJD (double JD) Q_DECL_OVERRIDE |
Set a calendar date from the Julian day number. | |
virtual void | setDate (QVector< int > parts) Q_DECL_OVERRIDE |
set date from a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QStringList | getDateStrings () const Q_DECL_OVERRIDE |
get a stringlist of calendar date elements sorted from the largest to the smallest. More... | |
Public Member Functions inherited from Calendar | |
Calendar (double jd) | |
virtual double | getJD () const |
Get Julian day number from a calendar date. | |
virtual QVector< int > | getDate () const |
get a vector of calendar date elements sorted from the largest to the smallest. More... | |
virtual QString | getFormattedDateString () const |
get a formatted complete string for a date. The default implementation just concatenates all strings from getDateStrings() with a space in between. | |
int | rdCorrSum (QVector< int >factors, int corr) |
Static Public Member Functions | |
static QVector< int > | mayanTzolkinFromFixed (int rd) |
usually internal, but used by MayaHaabCalendar. | |
static QString | tzolkinName (int i) |
return Tzolkin name for index [0...19] | |
static int | mayanTzolkinOrdinal (QVector< int > tzolkin) |
Static Public Member Functions inherited from Calendar | |
static double | momentFromJD (double jd, bool respectUTCoffset=true) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a "moment" in RD that represents JD. More... | |
static int | fixedFromMoment (double rd) |
static double | timeFromMoment (double rd) |
static int | fixedFromJD (double jd, bool respectUTCoffset=true) |
Interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a fixed date in RD that represents noon of JD. More... | |
static double | momentFromMJD (double mjd) |
static double | jdFromMoment (double rd, bool respectUTCoffset=true) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | jdFromFixed (double rd, bool respectUTCoffset=true) |
interfacing function from Reingold/Dershowitz: Calendrical Calculations Returns a JD from an RD "moment" (including fractions of day) Stellarium extension: optionally includes local time zone offset. More... | |
static double | mjdFromFixed (double rd) |
static int | dayOfWeekFromFixed (int rd) |
weekday from RD date. CC.UE(1.60). | |
static int | kdayOnOrBefore (const Calendar::Day k, const int rd) |
the R.D. of the nearest weekday k on or before rd | |
static int | kdayOnOrAfter (const Calendar::Day k, const int rd) |
the R.D. of the nearest weekday k on or after rd | |
static int | kdayNearest (const Calendar::Day k, const int rd) |
the R.D. of the nearest weekday k around rd | |
static int | kdayBefore (const Calendar::Day k, const int rd) |
the R.D. of the nearest weekday k before rd | |
static int | kdayAfter (const Calendar::Day k, const int rd) |
the R.D. of the nearest weekday k after rd | |
static double | modInterval (double x, double a, double b) |
Interval modulus, CC.UE 1.24. More... | |
static int | modInterval (int x, int a, int b) |
Interval modulus, CC.UE 1.24: This EXCLUDES the upper limit! Use StelUtils::amod(x, b) for CC's (x)mod[1..b]. | |
static int | rdCorrSum (QVector< int >parts, QVector< int >factors, int corr) |
Reingold-Dershowitz CC.UE 1.48. | |
static QVector< int > | toRadix (int num, QVector< int >radix) |
Split integer to mixed-radix vector. Reingold-Dershowitz CC.UE 1.42. | |
Static Public Attributes | |
static const int | mayanTzolkinEpoch |
Static Public Attributes inherited from Calendar | |
static constexpr const double | J2000 =2451545.0 |
static constexpr const double | jdEpoch =-1721424.5 |
static constexpr const double | mjdEpoch =678576.0 |
static constexpr const int | bogus =-1000000 |
Additional Inherited Members | |
Public Types inherited from Calendar | |
enum | Day { sunday = 0, monday, tuesday, wednesday, thursday, friday, saturday } |
enum from CC.UE-ch1.12. | |
enum | Season { spring = 0, summer = 90, autumn = 180, winter = 270 } |
Signals inherited from Calendar | |
void | partsChanged (QVector< int > parts) |
void | jdChanged (double jd) |
Protected Attributes inherited from Calendar | |
double | JD |
QVector< int > | parts |
date expressed as JD(UT), including day fraction (ready to interact with the main application) | |
The implementation follows CC. The "name" is not a month but also changes every day. The traditional writing is number-name, which is also used in the parts.
|
virtual |
|
virtual |
dayNumber[1..13]-nameIndex[1..20] We face a problem as the date is not unique. We can only find the date before current JD which matches the parts.
Implements Calendar.
Reimplemented in AztecTonalpohualliCalendar.