⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timetran.h

📁 卫星单点定位程序
💻 H
字号:
/*******************************************************************************
                                                                           
文件名称:TimeTran.h
作者:武汉大学测绘学院测绘工程2003级2班 陈胜 学号:200331610170
创建日期:2006-10-18 14:25
最后修改日期:

功能:GPS相关的时间结构及相互转换函数

成员函数说明:


该函数依赖于以下文件(不包括库函数):

 ******************************************************************************/

#ifndef _TIMETRAN_H_
#define _TIMETRAN_H_
#include <math.h>
#include <string.h>

//通用时
typedef struct tagCOMMONTIME {
	unsigned short	year;
	unsigned char	month;
	unsigned char	day;
	unsigned char	hour;
	unsigned char	minute;
	double			second;
}COMMONTIME;

typedef COMMONTIME *PCOMMONTIME;

//以秒来描叙一天时间
typedef struct tagTOD {
	long sn;			//秒的整数部分
	double tos;			//秒的小数部分
} TOD;

typedef TOD *PTOD;

//儒略日
typedef struct tagJULIANDAY {
	long day;					//天的整数部分
	TOD tod;					//不足一天的部分
} JULIANDAY;

typedef JULIANDAY *PJULIANDAY;

//约化儒略日
typedef struct tagMJulianDay {
	long day;					//整数部分
	TOD tod;					//不足一天的部分
} MJulianDay;

typedef MJulianDay *PMJulianDay;

//GPS时的周内时间
typedef struct tagTOW {
	long sn;			//秒的整数部分
	double tos;			//秒的小数部分
} TOW;

typedef TOW *PTOW;

//GPS时
typedef struct tagGPSTIME {
	long wn;				//周数,从1980年 1 月 6 日午夜起
	TOW tow;				//周内时间
} GPSTIME;

typedef GPSTIME *PGPSTIME;

//年积日
typedef struct tagDOY {
	unsigned short year;	//年份
	unsigned short day;		//年积日
	TOD tod;				//当天时间
} DOY;

typedef DOY *PDOY;


//1. 由通用时到儒略日
void CommonTimeToJulianDay (PCOMMONTIME pct,	//指向通用时的指针;
							PJULIANDAY pjd);	//指向儒略日的指针

//2. 儒略日到通用时
void JulianDayToCommonTime (PJULIANDAY pjd,		//指向儒略日的指针;
							PCOMMONTIME pct);	//指向通用时的指针。

//3. GPS时到儒略日
void GPSTimeToJulianDay (PGPSTIME pgt,			//指向GPS时的指针;
						 PJULIANDAY pjd);		//指向儒略日的指针。

//4. 儒略日到GPS时
void JulianDayToGPSTime (PJULIANDAY pjd,		//指向儒略日的指针;
						 PGPSTIME pgt);			//指向GPS时的指针。

//5. 通用时到GPS时
void CommonTimeToGPSTime (PCOMMONTIME pct,		//指向通用时的指针
						  PGPSTIME pgt);		//指向GPS时的指针。

//6. GPS时到通用时
void GPSTimeToCommonTime (PGPSTIME pgt,			//指向GPS时的指针;
						  PCOMMONTIME pct);		//指向通用时的指针。


//对时间进行调整
void SetTimeDelta (PJULIANDAY pjdNew,			//指向计算所得的儒略日的指针
				   PJULIANDAY pjdOld,			//指向原始的儒略日的指针
				   double dDelta);				//时间差(second)
//计算时间差
double SubtractTime (PJULIANDAY pjdMinuend,			//指向被减数的儒略日的指针
					 PJULIANDAY pjdSubtrahend);		//指向减数的儒略日的指针

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -