コード例 #1
0
ファイル: hebwatch.c プロジェクト: rosenbergj/pebble_hebwatch
void handle_tick(AppContextRef app_ctx, PebbleTickEvent *event) {
    float fracthour = event->tick_time->tm_hour + (event->tick_time->tm_min * 1.0 / 60) + (event->tick_time->tm_sec * 1.0 / 3600) - 1;
    double jc = julian_century(event->tick_time->tm_year + 1900, event->tick_time->tm_mon+1, event->tick_time->tm_mday, fracthour);
  /*  h_m_chelek_string(jc, hour_count_start, hour_count_end, s_time_str_buffer);*/
  string_format_time(s_time_str_buffer, 32, "%I:%M:%S %p", event->tick_time);
  text_layer_set_text(&normaltime, s_time_str_buffer);
}
コード例 #2
0
ファイル: SPA.cpp プロジェクト: kamalsirsa/vtp
////////////////////////////////////////////////////////////////////////////////////////////////
// Calculate required SPA parameters to get the right ascension (alpha) and declination (delta)
// Note: JD must be already calculated and in structure
////////////////////////////////////////////////////////////////////////////////////////////////
void calculate_geocentric_sun_right_ascension_and_declination(spa_data *spa)
{
	double x[TERM_X_COUNT];

	spa->jc = julian_century(spa->jd);

	spa->jde = julian_ephemeris_day(spa->jd, spa->delta_t);
	spa->jce = julian_ephemeris_century(spa->jde);
	spa->jme = julian_ephemeris_millennium(spa->jce);

	spa->l = earth_heliocentric_longitude(spa->jme);
	spa->b = earth_heliocentric_latitude(spa->jme);
	spa->r = earth_radius_vector(spa->jme);

	spa->theta = geocentric_longitude(spa->l);
	spa->beta  = geocentric_latitude(spa->b);

	spa->x0 = mean_elongation_moon_sun(spa->jce);
	spa->x1 = mean_anomaly_sun(spa->jce);
	spa->x2 = mean_anomaly_moon(spa->jce);
	spa->x3 = argument_latitude_moon(spa->jce);
	spa->x4 = ascending_longitude_moon(spa->jce);

	x[TERM_X0] = spa->x0;
	x[TERM_X1] = spa->x1;
	x[TERM_X2] = spa->x2;
	x[TERM_X3] = spa->x3;
	x[TERM_X4] = spa->x4;

	nutation_longitude_and_obliquity(spa->jce, x, &(spa->del_psi), &(spa->del_epsilon));

	spa->epsilon0 = ecliptic_mean_obliquity(spa->jme);
	spa->epsilon  = ecliptic_true_obliquity(spa->del_epsilon, spa->epsilon0);

	spa->del_tau	= aberration_correction(spa->r);
	spa->lamda		= apparent_sun_longitude(spa->theta, spa->del_psi, spa->del_tau);
	spa->nu0		= greenwich_mean_sidereal_time (spa->jd, spa->jc);
	spa->nu			= greenwich_sidereal_time (spa->nu0, spa->del_psi, spa->epsilon);

	spa->alpha = geocentric_sun_right_ascension(spa->lamda, spa->epsilon, spa->beta);
	spa->delta = geocentric_sun_declination(spa->beta, spa->epsilon, spa->lamda);
}