Changeset 3171 in ntrip for trunk/BNC/bncutils.cpp


Ignore:
Timestamp:
Mar 29, 2011, 4:10:33 PM (13 years ago)
Author:
mervart
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/bncutils.cpp

    r3044 r3171  
    309309//
    310310////////////////////////////////////////////////////////////////////////////
     311double djul(int jj, int mm, double tt) {
     312  int    ii, kk;
     313  double  djul ;
     314  if( mm <= 2 ) {
     315    jj = jj - 1;
     316    mm = mm + 12;
     317  } 
     318  ii   = jj/100;
     319  kk   = 2 - ii + ii/4;
     320  djul = (365.25*jj - fmod( 365.25*jj, 1.0 )) - 679006.0;
     321  djul = djul + floor( 30.6001*(mm + 1) ) + tt + kk;
     322  return djul;
     323}
     324
     325//
     326////////////////////////////////////////////////////////////////////////////
     327void jdgp(double tjul, double & second, int & nweek) {
     328  double      deltat;
     329  deltat = tjul - 44244.0 ;
     330  // current gps week
     331  nweek = (int) floor(deltat/7.0);
     332  // seconds past midnight of last weekend
     333  second = (deltat - (nweek)*7.0)*86400.0;
     334}
     335
     336//
     337////////////////////////////////////////////////////////////////////////////
    311338void GPSweekFromDateAndTime(const QDateTime& dateTime,
    312339                            int& GPSWeek, double& GPSWeeks) {
     
    321348  GPSWeeks = (weekDay - 1) * 86400.0
    322349             - dateTime.time().msecsTo(QTime()) / 1e3;
     350}
     351
     352//
     353////////////////////////////////////////////////////////////////////////////
     354void GPSweekFromYMDhms(int year, int month, int day, int hour, int min,
     355                       double sec, int& GPSWeek, double& GPSWeeks) {
     356
     357  double mjd = djul(year, month, day);
     358
     359  jdgp(mjd, GPSWeeks, GPSWeek);
     360  GPSWeeks += hour * 3600.0 + min * 60.0 + sec; 
    323361}
    324362
Note: See TracChangeset for help on using the changeset viewer.