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

📄 rinexnavread.h

📁 对GPS导航星历(RINEX格式)的读取
💻 H
字号:
#ifndef _RINEX_NAV_READ_H
#define _RINEX_NAV_READ_H

#include <vector>
#include "stdio.h"
#include <iostream>
#include <string>
#include   <fstream>
using namespace std;

/*
typedef struct tagDELTA_UTC{
double A0;
double A1;
long   T;
long   W;

}DELTA_UTC;

typedef DELTA_UTC *PDELTA_UTC;

typedef struct taGMBNHDR{
double ver_ID;//版本号
char file_type;//文件类型
//int ver_major;
//int ver_minor;
char mark_number[_MAX_RNX_MARK_NUMBER];//创建本数据文件所采用程序的名称
char mark_name[_MAX_RNX_MARK_NAME];//创建本数据文件单位的名称
char mark_date[_MAX_RNX_MARK_DATE];//创建本数据文件的日期

double ion_alpha[4];//电离层参数
double ion_beta[4];//电离层参数
DELTA_UTC delta_UTC;//用于计算UTC时间的历书参数
long leap_seconds;//跳秒造成的时间差

}GMNHDR;
typedef GMNHDR *PGMNHDR;
*/
typedef struct tagGMNREC{
//////////The Zero Line
	int PRN;          //Satellite Number
	int year,month,day;
	int hour,minute;
	double second;
	double a0;        //卫星钟差常数项
	double a1;        //卫星钟差漂移项
	double a2;        //卫星钟差漂移速率项
	/////The first line
	double IODE;      //星历数据的年龄
	double Crs;       //在轨道径向方向上周期改正正弦项的振幅
	double deltn;     //平近点角的长期变化
	double M0;        //参考时刻的平近点角
	////The second line                       
	double Cuc;       //在轨道延迹方向上周期改正余弦项的振幅
	double e;         //偏心率
	double Cus;       //在轨道延迹方向上周期改正正弦项的振幅
	double SqrtA;    //长半轴
	////The third line
	double toe;       //星历参考时刻
	double Cic;       //轨道倾角周期改正余弦项的振幅
	double omiga0;    //参考时刻升交点赤经的主项
	double Cis;       //轨道倾角周期改正正弦项的振幅
	////The fourth line
	double i0;        //参考时刻轨道倾角
	double Crc;       //在轨道径向方向上周期改正余弦项的振幅
	double omiga;         //近地点角距
	double omigaDot;     //升交点赤经在赤道平面中的长期变化
	////The fifth line
	double iDot;         //轨道倾角变化率
	double CodesOnL2Chanel;    //L2上存在哪些码指示
	double weekno;    //GPS星期数
	double L2PdataFlag;    //L2上P码伪距指示
	////The sixth line
	double	SVAccuracy;     //本广播星历精度指标
	double  SVHealth;    //卫星是否健康指标
	double tgd;       //典礼层群延迟改正参数
	double todc;      //卫星钟数据年龄
	////The seventh line
	double TransTimeofMsg;      //信息传送时间
	double spare1;//备用
	double spare2;
	double spare3;
}GMNREC;

typedef GMNREC *PGMNREC;

/*typedef struct tagGMN{
 //GMNHDR hdr;
//GMNREC record[1];
vector<GMNREC>  navRecord;
}GMN;
typedef GMN *PGMN;
*/
//void ReadRinexNavFile(string fp,PGMN pnav);
vector<GMNREC> ReadRinexNavFile(string fp);
#endif

⌨️ 快捷键说明

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