2013-07-22 4 views
5

ich eine Anwendung in Lua bin zu schreiben, die den Sonnenuntergang/Sonnenaufgang berechnet, und dies zu tun, hatte ich den Gregorianischen Kalender in Julian Tage konvertieren zunächst und alles tun, um die komplexe Mathematik und solche von dort .Julian Date gregorianisches Datum

Ich habe die harte Mathematik abgeschlossen, aber jetzt muss ich das julianische Datum (2456495.6833865 als Beispiel) zurück zu einem gregorianischen konvertieren, komplett mit der Zeit. Der einzige Code, den ich gefunden habe, das tun dies nur den Tag hat, Jahr und Monat, aber keine Erwähnung der Zeit (was ich glaube ist als ein Bruchteil des Tages ausgedrückt, in diesem Fall ist die Zahlen nach dem Komma)

jede Hilfe wäre sehr dankbar - die Website unter der Funktionalität hat, aber ich kann keinen Code oder Möglichkeiten, es zu tun finden:

http://ssd.jpl.nasa.gov/tc.cgi#top

Thanks again,

FYP.

Antwort

7

This answer zeigt den Weg von einem Unix-Zeitstempel auf ein julianisches Datum zu konvertieren. Dies ist, wie Sie es in Lua tun würden:

local julian = (os.time()/86400) + 2440587.5 
print(julian) 
-- 2456496.1647338 

Und so ist dies, wie Sie in der anderen Richtung umwandeln würden:

print((julian - 2440587.5) * 86400)) 
-- 1374508633 

Sie können dann diese Umwandlung in ein Datum und Zeit mit os.date().

Verwandte Themen