1 SPP
/* rnx2rtkp main -------------------------------------------------------------*/
int main(int argc, char** argv)
{
int i, n, ret, x;
double tint = 0; /* 求解时间间隔(0:默认) */
gtime_t ts = { 0 }, te = { 0 }; /* 历元时段始末控制变量 */
char* infile[MAXFILE], outfile[MAXSTRPATH] = { '\0' };
char resultpath[MAXSTRPATH] = ""; /* 结果输出路径 */
char sep = (char)FILEPATHSEP;
prcopt_t prcopt = prcopt_default; /* 默认处理选项设置 */
solopt_t solopt = solopt_default; /* 默认求解格式设置 */
sol_t solt;
filopt_t filopt = { /* 参数文件路径设置 */
"", /* 卫星天线参数文件 */
"", /* 接收机天线参数文件 */
"", /* 测站位置文件 */
"", /* 扩展大地水准面数据文件 */
"", /* 电离层数据文件 */
"", /* DCB数据文件 */
"", /* 地球自转参数文件 */
"", /* 海洋潮汐负荷文件 */
};
/* 设置观测值文件和星历文件 */
char infile_[MAXFILE][MAXSTRPATH] = {
"...\\rtklib\\RTKLIB-rtklib_2.4.3\\test\\data\\rinex\\07590920.05o",
"...\\rtklib\\RTKLIB-rtklib_2.4.3\\test\\data\\rinex\\07590920.05n",
"",
"",
"",
"",
"",
""
};
long t1, t2;
/* 设置起始历元和结束历元时间 */
double eps[] = { 2005,4,2,0,0,0 }, epe[] = { 2005,4,3,0,0,0 }; /* 设置计算的历元时段 */
ts = epoch2time(eps); te = epoch2time(epe);
for (i = 0, n = 0; i < MAXFILE; i++)
if (strcmp(infile_[i], "")) infile[n++] = &infile_[i][0];
sprintf(outfile, "%s%cspp.pos", resultpath, sep);//设置输出路径
/* 自定义求解格式 --------------------------------------------------------*/
solopt.posf = SOLF_XYZ; /* 选择输出的坐标格式,经纬度或是XYZ坐标等 */
solopt.times = TIMES_GPST; /* 控制输出解的时间系统类型 */
solopt.degf = 0; /* 输出经纬度格式(0:°, 1:°′″) */
solopt.outhead = 1; /* 是否输出头文件(0:否,1:是) */
solopt.outopt = 1; /* 是否输出prcopt变量(0:否,1:是) */
solopt.height = 1; /* 高程(0:椭球高,1:大地高) */
solopt.sstat = 2;
/*rtk*/
solt.stat = SOLQ_SINGLE;
t1 = clock();
ret = postpos(ts, te, tint, 0.0, &prcopt, &solopt, &filopt, infile, n, outfile, "", "");
t2 = clock();
if (!ret) fprintf(stderr, "%40s\r", "");
printf("\n * The total time for running the program: %6.3f seconds\n%c", (double)(t2 - t1) / CLOCKS_PER_SEC, '\0');
printf("Press any key to exit!\n");
getchar();
return ret;
}
个人运行需要修改的参数:
char resultpath[MAXSTRPATH] = ""; /* 结果输出路径 */ 修改为想要输出的文件夹位置
char infile_[MAXFILE][MAXSTRPATH] = {
"...\\rtklib\\RTKLIB-rtklib_2.4.3\\test\\data\\rinex\\07590920.05o",
"...\\rtklib\\RTKLIB-rtklib_2.4.3\\test\\data\\rinex\\07590920.05n",
}; /* 设置观测值文件和星历文件 */ 此观测和导航文件均为rtklib自带的测试数据sprintf(outfile, "%s%cspp.pos", resultpath, sep);//设置输出路径 给输出的文件命名,这里的文件名为spp.pos
运行结果