//printf("alt = %f \n", alt);
return alt;
}
-void get_sun_pos(int h, int m, double * alt, double * azm)
-{
- int year, month, day, hour, min, zone;
- double lat, lon, alt_max;
- //get_localtime(&year, &month, &day, &hour, &min, &zone);
- year = 2010;
- month = 4;
- day = 14;
- hour = h;
- min = m;
- zone = 3;
- get_coord(&lat, &lon);
- alt_max = get_max_sun_alt(lon, lat, year, month, day, zone);
- *alt = altitude(lon, lat, year, month, day, hour, min, zone);
- //printf("max = %f alt = %f ",alt_max, *alt);
- *alt = *alt / (alt_max + 10); // sun height in percent
- //printf("alt1 = %f \n", *alt);
-
- *azm = azimuth(lon, lat, year, month, day, hour, min, zone);
- //printf("azm = %f ", *azm);
- //if south latitude
- if (lat < 0){
- *azm = 75 + (75 - *azm);
- *azm = fmod(*azm, 380);
- }
- *azm = (*azm - 75) / 210; // sun azimuth in percent
- //printf("azm1 = %f \n", *azm);
-}
-void get_sun_pos1(double * alt, double * azm)
+void get_sun_pos(double * alt, double * azm)
{
int year, month, day, hour, min, zone;
double lat, lon, alt_max;
return time(NULL) + 60*60*12;
}
-int get_daytime(int h, int m)
-{
- double alt, azm;
- get_sun_pos(h, m, &alt, &azm);
- alt = alt * 100;
- azm = azm * 100;
- //printf("alt = %f azm=%f\n", alt, azm);
- if (alt <= -7) return TIME_NIGHT;
- if (alt > -7 && alt < 7 && azm < 50) return TIME_SUNRISE;
- if (alt > -7 && alt < 7 && azm > 50) return TIME_SUNSET;
- if (alt >= 7) return TIME_DAY;
- return TIME_DAY;
-}
-int get_daytime1()
+int get_daytime()
{
double alt, azm;
- get_sun_pos1(&alt, &azm);
+ get_sun_pos(&alt, &azm);
alt = alt * 100;
azm = azm * 100;
//printf("alt = %f azm=%f\n", alt, azm);
if (alt >= 7) return TIME_DAY;
return TIME_DAY;
}
+
int get_moon_phase()
{
int year, month, day, hour, min, zone;
if (phase > 45 && phase <= 55) return MOON_FULL;
if (phase > 55 && phase <= 75) return MOON_DECREASHALF;
if (phase > 75 && phase < 97) return MOON_DECREAS;
- //return MOON_NONE;
- return MOON_GROWSHALF;
+ return MOON_NONE;
}