经过一番思考,你可以得到这样的日期:
if (ang>=0.0) date = (21.March) +ang*(21.June -21.March )/(23.4 degrees);
else date = (21.September)-ang*(21.December-21.September)/(23.4 degrees);
Run Code Online (Sandbox Code Playgroud)
如果您在天文正午测量太阳高度(在您所在的纬度),则:
ang = height - (90 degrees - your latitude)
Run Code Online (Sandbox Code Playgroud)
要计算一天中的时间,您需要寻找
不要忘记,这种方法不包括进动、章动......