GPSTK日志四 通用时

9 篇文章 7 订阅


            很开心楼主开始了第四个日志的书写,也希望大家能留言鼓励下,也是能够这枯燥的生活一些激情吧。另外楼主说明下,楼主为了单点定位才学tk的。所以可能会按照自己需要的路线了解TK,大家如果有什么更好的经验过程,也希望能分享一下吧~国内的学术环境楼主不多做评价。

         在这之前先简单的介绍先TK中定义的时间常量(TimeConstants.hpp)

      const double MJD_TO_JD = 2400000.5;   // 简化儒略日和儒略日转换常熟
         const long MJD_JDAY = 2400001L;       //这个暂不明白有什么用
         const long GPS_EPOCH_JDAY = 2444245L;   //GPS时间系统起始历元对应儒略日(1980.1.6)源文件中注释为1980-1-1
         const long GPS_EPOCH_MJD = 44244L;    //GPS时间系统起始历元对应简化儒略日
         const long UNIX_MJD = 40587L;       //Unix时间戳时期历元对应简化儒略日(1970.1.1)
         const long HALFWEEK = 302400L;   //GPS周对应秒的一半
         const long FULLWEEK = 604800L;   //GPS周对应的秒    7*24*3600
         const long WEEK_PER_EPOCH = 1024L;    //1024周(即7168天)为GPS时间系统一循环周期  
         //一天和秒转换常数
         const long SEC_PER_DAY = 86400L;  
         const double DAY_PER_SEC = 1.0/SEC_PER_DAY;   
          //秒和毫秒转换常数        
         const long MS_PER_SEC = 1000L;  
         const double SEC_PER_MS = 1.0/MS_PER_SEC;
        //毫秒和一天转换常熟 
        const long MS_PER_DAY = MS_PER_SEC * SEC_PER_DAY;
       const double DAY_PER_MS = 1.0/MS_PER_DAY;
       //z计数与一天、一周的转换常数,z计数周期为1.5s(参考P码的产生)
       const long ZCOUNT_PER_DAY = 57600L;
       const double DAY_PER_ZCOUNT = 1.0/ZCOUNT_PER_DAY;
       const long ZCOUNT_PER_WEEK = 403200L;
       const double WEEK_PER_ZCOUNT = 1.0/ZCOUNT_PER_WEEK;

                汗,最后一个真是难倒楼主了。接下来捡重点讲吧,commontime存储的形式是天、毫秒、小数秒(注意小时秒的有效范围0~0.001)这里没明白为什么要弄个毫秒去存储,不过幸好所有的接口函数都是秒的,也就是说除非你直接调用commontime对象的毫秒对象,否则你所执行的操作都会是基于秒的。还真是不好说啊~~

直白点吧,所有函数参数列表中表示秒的参数单位都是秒,不是毫秒

              例如 CommonTime& CommonTime::addSeconds( long seconds ),记住这个地方你输入的seconds 变量是秒,不是毫秒。真不明白为嘛要设计个毫秒进来。

所有函数返回的表示秒的参数单位也是秒

            例如   double CommonTime::getSecondOfDay(),返回的double是多少秒。

不过有一个函数asstring()输出的秒部分单位是毫秒。我想大概大家能理解了吧,实在不行就去看看源码吧,so easy  O(∩_∩)O哈!

            关于重载要说的就是两个CommonTime对象重载 包括: -,==,!=,<,>,<=,>=

            最后说下私有 normalize是检查 CommonTime对象变量成员范围是否合法的私有函数。

OK~讲的可能不太好,希望下一个能够给力点吧!

   



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值