資源簡(jiǎn)介
在VC上寫的代碼,改正了地球自轉(zhuǎn)誤差,精度在10M內(nèi)。此代碼是學(xué)習(xí)GPS的很好的參考哦資料。

代碼片段和文件信息
//?Gps.cpp:?implementation?of?the?CGps?class.
//
//////////////////////////////////////////////////////////////////////
#include?“stdafx.h“
#include?“SPP.h“
#include?“Gps.h“
#include?“math.h“
#include?“Matrix.h“
#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////
CGps::CGps()
{
?????avx=0;
?avy=0;
?????avz=0;
?????avdr=0;
?nData.RemoveAll();
?oData.RemoveAll();
?GpsReceivePosition.RemoveAll();
?GpsPosition.RemoveAll();
}
CGps::~CGps()
{
}
bool?CGps::Read_O_File()
{
CStdioFile?Gps_O;
oFileDataFirstLine??observeInfoTemp;
OneSatnFileData?????oSatDataTemp;
oFileHead???????????oHeadTemp;
oFileData???????????oDataTemp;
CString?path;
CString?szFilter=“Gps_O(*.07O)|*.07O|All?Files?(*.*)|*.*||“;
????CFileDialog??dlg(TRUENULLNULLOFN_HIDEREADONLYszFilter);
if(dlg.DoModal()==IDOK)
{?
path=dlg.GetPathName();
}else?return?false;
//打開O文件
oData.RemoveAll();
GpsReceivePosition.RemoveAll();
GpsPosition.RemoveAll();
Gps_O.Open(pathCFile::modeRead);
CString?str;
????while(Gps_O.ReadString(str))
{
//********************************************************
//讀取頭部分
do?
{
if?(str.Find(“APPROX?POSITION?XYZ“)!=-1)
{
oHeadTemp.StationPosition.XX=atof(str.Mid(014));
oHeadTemp.StationPosition.YY=atof(str.Mid(1414));
oHeadTemp.StationPosition.ZZ=atof(str.Mid(2814));
//AfxMessageBox(str.Mid(1414));
continue;
}
if?(str.Find(“ANTENNA:?DELTA?H/E/N“)!=-1)
{
oHeadTemp.AerialHight=atof(str.Mid(014));
oHeadTemp.AerialEastBias=atof(str.Mid(1414));
oHeadTemp.AerialNorthBias=atof(str.Mid(2814));
continue;
}
if?(str.Find(“WAVELENGTH?FACT?L1/2“)!=-1)
{
oHeadTemp.L1WaveLength=atoi(str.Mid(06));
oHeadTemp.L2WaveLength=atoi(str.Mid(66));
continue;
}
if?(str.Find(“#?/?TYPES?OF?OBSERV“)!=-1)
{
oHeadTemp.ObserveDataTypeSum=atoi(str.Mid(06));
for?(int?i=0;i {
if(i<9)oHeadTemp.DataType[i]=str.Mid(10+i*62);
else
{
if(i==9)Gps_O.ReadString(str);
oHeadTemp.DataType[i]=str.Mid(10+(i-9)*62);
}
}
continue;
}
if?(str.Find(“INTERVAL“)!=-1)
{
oHeadTemp.Interval=atoi(str.Mid(010));
?????continue;
}
if?(str.Find(“TIME?OF?FIRST?OBS“)!=-1)
{
oHeadTemp.FirstObserve.wYear=atoi(str.Mid(06));
oHeadTemp.FirstObserve.byMonth=atoi(str.Mid(66));
oHeadTemp.FirstObserve.byDay=atoi(str.Mid(126));
oHeadTemp.FirstObserve.byHour=atoi(str.Mid(186));
oHeadTemp.FirstObserve.byMinute=atoi(str.Mid(246));
oHeadTemp.FirstObserve.dSecond=atof(str.Mid(3013));
continue;
}
if?(str.Find(“TIME?OF?LAST?O
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????90888??2007-11-16?09:39??GPS單點(diǎn)定位源代碼\SPP\.txt
?????文件??????19581??2007-11-15?16:20??GPS單點(diǎn)定位源代碼\SPP\1.txt
?????文件?????620013??2007-11-14?12:19??GPS單點(diǎn)定位源代碼\SPP\191857ba
?????文件?????114876??2007-11-15?16:20??GPS單點(diǎn)定位源代碼\SPP\2.txt
?????文件??????29326??2007-08-09?22:53??GPS單點(diǎn)定位源代碼\SPP\39062211.07n
?????文件??????93610??2007-10-16?13:32??GPS單點(diǎn)定位源代碼\SPP\39062211.07o
?????文件?????108123??2007-11-13?20:05??GPS單點(diǎn)定位源代碼\SPP\39062211.衛(wèi)星坐標(biāo)
?????文件??????14204??2007-11-13?20:05??GPS單點(diǎn)定位源代碼\SPP\39062211.結(jié)果
?????文件?????120027??2007-04-21?15:47??GPS單點(diǎn)定位源代碼\SPP\ba
?????文件?????850644??2007-11-14?10:56??GPS單點(diǎn)定位源代碼\SPP\ba
?????文件??????92706??2007-11-15?15:58??GPS單點(diǎn)定位源代碼\SPP\ba
?????文件?????658816??2007-11-15?15:58??GPS單點(diǎn)定位源代碼\SPP\ba
?????文件?????159430??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\Gps.obj
?????文件??????????0??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\Gps.sbr
?????文件??????19821??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\MainFrm.obj
?????文件??????????0??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\MainFrm.sbr
?????文件??????10927??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\Matrix.obj
?????文件??????????0??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\Matrix.sbr
?????文件????3204096??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.bsc
?????文件?????176183??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.exe
?????文件?????513468??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.ilk
?????文件??????23718??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.obj
?????文件????6934964??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.pch
?????文件?????607232??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.pdb
?????文件???????8132??2011-09-22?19:46??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.res
?????文件??????????0??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\SPP.sbr
?????文件??????23936??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\SPPDoc.obj
?????文件??????????0??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\SPPDoc.sbr
?????文件??????29364??2011-09-24?18:47??GPS單點(diǎn)定位源代碼\SPP\Debug\SPPView.obj
?????文件??????????0??2011-09-22?21:27??GPS單點(diǎn)定位源代碼\SPP\Debug\SPPView.sbr
............此處省略55個(gè)文件信息
評(píng)論
共有 條評(píng)論