📄 commwizarddlg.cpp
字号:
}
in>>c;
for(i=0;i<8;i++)
in>>pointnumber[i];
pointnumber[i]='\0';
out<<pointnumber<<"\t";
}
else if(strcmp(sign,"21")==0)
{
int l,m,n;
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>ha;
ha/=100000.0;
l=(int)ha;
ha-=l;
m=(int)(ha*100);
ha*=100;
ha-=m;
n=(int)(ha*100);
ha=l+m/60.0+n/3600.0;
// out<<ha<<"\t";
}
else if(strcmp(sign,"22")==0)
{
int l,m,n;
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>va;
va/=100000.0;
l=(int)va;
va-=l;
m=(int)(va*100);
va*=100;
va-=m;
n=(int)(va*100);
va=l+m/60.0+n/3600.0;
// out<<va<<"\t";
}
else if(strcmp(sign,"31")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>SD;
SD/=1000.0;
// out<<SD<<"\t";
}
else if(strcmp(sign,"81")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>E1;
E1/=1000.0;
out<<E1<<"\t";
}
else if(strcmp(sign,"82")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>N1;
N1/=1000.0;
out<<N1<<"\t";
}
else if(strcmp(sign,"83")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>Z1;
Z1/=1000.0;
out<<Z1<<"\t"<<endl;
}
else if(strcmp(sign,"87")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>d;
}
}
}
else if(m_InstrSeled==1)
{
//SOKKIA:
while(!in.eof())
{
int i;
for(i=0;i<4;i++)
{
in>>sign[i];
if(sign[i] == '\0') break;
}
sign[i]='\0';
if(strcmp(sign,"02TP")==0)
{
// for(i=0;i<8;i++)
// {
// in>>c;
// out<<c;
// }
// out<<"\t";
in>>N0>>E0>>Z0;
// out<<setprecision(3)<<setiosflags(ios::showpoint)<<setiosflags(ios::fixed)<<N0<<"\t"<<E0<<"\t"<<Z0<<"\t";
out<<N0<<"\t"<<E0<<"\t"<<Z0<<"\t";
in>>IN_H;
// in>>Buffer;
// out<<Buffer<<"\t";
out<<IN_H<<endl;
}
else if(strcmp(sign,"08TP")==0)
{
// for(i=0;i<8;i++)
// {
// in>>c;
// out<<c;
//
// }
// out<<"\t";
// for(i=0;i<3;i++)
// {
// in>>d;
// out<<d<<"\t";
// }
//sscanf(str , %lf %lf %lf", &a , &b &c) ;
in>>N1>>E1>>Z1;
out<<N1<<"\t"<<E1<<"\t"<<Z1<<"\t"<<endl;
// in>>Buffer;
// out<<Buffer<<"\t";
// out<<endl;
}
else if(strcmp(sign,"09F1")==0)
{
for(i=0;i<8;i++)
{
in>>c;
}
for(i=0;i<8;i++)
{
in>>c;
out<<c;
}
out<<"\t";
in>>SD>>va>>ha>>Buffer;
sinz=sin(va*pi/180.0);
cosz=cos(va*pi/180.0);
sinaz=sin(ha*pi/180.0);
cosaz=cos(ha*pi/180.0);
N1=N0+SD*sinz*cosaz;
E1=E0+SD*sinz*sinaz;
Z1=Z0+SD*cosz+IN_H-rh;
out<<N1<<"\t"<<E1<<"\t"<<Z1<<"\t"<<Buffer<<endl;
}
else if(strcmp(sign,"03NM")==0)
{
in>>rh;
out<<rh<<endl;
}
else
{
continue;
}
}
}
else if(m_InstrSeled==2)
{
//Topcon
while(!in.eof())
{
in>>c;
if(c=='\'')
{
int i=0;
in>>c;
while(c!='_'&& !in.eof())
{
pointnumber[i++]=c;
in>>c;
}
pointnumber[i]='\0';
// out<<endl<<pointnumber<<"\t";
// sign=1;
}
else if(c=='(')
{
int i=0;
in>>c;
while(c!='_'&& !in.eof())
{
PO_CODE[i++]=c;
in>>c;
}
PO_CODE[i]='\0';
out<<PO_CODE<<"\t";
}
else if(c==')')
{
in>>IN_H;
out<<IN_H<<"\n";
in>>c;
}
else if(c=='+')
{
int i=0;
in>>c;
while(c!='_'&& !in.eof())
{
pointnumber[i++]=c;
in>>c;
}
pointnumber[i]='\0';
}
else if(c==' ')
{
in>>c;
}
else if(c=='?')
{
in>>c;
in>>SD;
SD/=1000.0;
in>>c;
in>>va;
va/=10000.0;
in>>ha;
ha/=10000.0;
in>>c;
in>>HD;
in>>c;
while(c!='_'&& !in.eof())
in>>c;
}
else if(c=='U')
{
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>N1;
N1/=1000.000;
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>E1;
E1/=1000.000;
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>Z1;
Z1/=1000.000;
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>ha;
ha/=10000.000;
// in>>c;
while(c!='_'&& !in.eof())
in>>c;
}
else if(c=='*')
{
int i=0;
in>>c;
while(c!='_'&& !in.eof())
{
PO_CODE[i++]=c;
in>>c;
}
PO_CODE[i]='\0';
out<<PO_CODE<<"\t";
}
else if(c==',')
{
int l,m,n;
in>>rh;
in>>c;
l=(int)va;
va-=l;
m=(int)(va*100);
va*=100;
va-=m;
n=(int)(va*100);
va=l+m/60.0+n/3600.0;
l=(int)ha;
ha-=l;
m=(int)(ha*100);
ha-=m;
n=(int)(ha*100);
ha=1+m/60.0+n/3600.0;
sinz=sin(va*pi/180.0);
cosz=cos(va*pi/180.0);
sinaz=sin(ha*pi/180.0);
cosaz=cos(ha*pi/180.0);
// N1=N0+SD*sinz*cosaz;
// E1=E0+SD*sinz*sinaz;
// Z1=Z0+SD*cosz+IN_H-rh;
out<<pointnumber<<"\t"<<N1<<"\t"<<E1<<"\t"<<Z1<<"\t"<<rh<<endl;
}
}
}
in.close() ;
out.close();
}
void CCommWizardDlg::ProcessZuoBiao()
{
/*
CStdioFile m_sfileR;
CStdioFile m_sfileW;
if(!m_sfileR.Open(m_FilePathRead,CFile::modeCreate | CFile::modeRead|CFile::typeText,NULL))
{
AfxMessageBox("打开文件错误!" , MB_ICONSTOP , NULL) ;
return ;
}
if(!m_sfileW.Open("c:\\temp.tmp",CFile::modeReadWrite|CFile::typeText,NULL))
{
AfxMessageBox("生成文件错误!" , MB_ICONSTOP , NULL) ;
return ;
}
*/
ifstream in(m_FilePathRead);
//assure(in,m_FilePathRead);
ofstream out("c:\\temp.tmp");
//assure(out,m_FilePathReadWrite);
double SD,va,ha,HD,N0,E0,Z0,rh,Z1,N1,E1,IN_H,sinz,cosz,sinaz,cosaz,d;
char pointnumber[50];
char PO_CODE[50];
char Buffer[50];
char sign[50];
char c;
CString m_strPro;
////////////////////////////////////////////////
// TODO: Add your control notification handler code here
if(m_InstrSeled==0)
{
//LEICA
while(!in.eof())
{
int i;
for(i=0;i<2;i++)
in>>sign[i];
sign[i]='\0';
if(strcmp(sign,"11")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
for(i=0;i<8;i++)
in>>pointnumber[i];
pointnumber[i]='\0';
out<<pointnumber<<"\t";
}
else if(strcmp(sign,"21")==0)
{
int l,m,n;
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>ha;
ha/=100000.0;
l=(int)ha;
ha-=l;
m=(int)(ha*100);
ha*=100;
ha-=m;
n=(int)(ha*100);
ha=l+m/60.0+n/3600.0;
// out<<ha<<"\t";
}
else if(strcmp(sign,"22")==0)
{
int l,m,n;
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>va;
va/=100000.0;
l=(int)va;
va-=l;
m=(int)(va*100);
va*=100;
va-=m;
n=(int)(va*100);
va=l+m/60.0+n/3600.0;
// out<<va<<"\t";
}
else if(strcmp(sign,"31")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>SD;
SD/=1000.0;
// out<<SD<<"\t";
}
else if(strcmp(sign,"81")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>E1;
E1/=1000.0;
out<<E1<<"\t";
}
else if(strcmp(sign,"82")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>N1;
N1/=1000.0;
out<<N1<<"\t";
}
else if(strcmp(sign,"83")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>Z1;
Z1/=1000.0;
out<<Z1<<"\t"<<endl;
}
else if(strcmp(sign,"87")==0)
{
in>>c;
while(c!='+' && !in.eof())
{
in>>c;
}
in>>c;
in>>d;
}
}
}
else if(m_InstrSeled==1)
{
//SOKKIA:
while(!in.eof())
{
int i;
for(i=0;i<4;i++)
{
in>>sign[i];
if(sign[i] == '\0') break;
}
sign[i]='\0';
if(strcmp(sign,"02TP")==0)
{
// for(i=0;i<8;i++)
// {
// in>>c;
// out<<c;
// }
// out<<"\t";
in>>N0>>E0>>Z0;
// out<<setprecision(3)<<setiosflags(ios::showpoint)<<setiosflags(ios::fixed)<<N0<<"\t"<<E0<<"\t"<<Z0<<"\t";
out<<N0<<"\t"<<E0<<"\t"<<Z0<<"\t";
in>>IN_H;
// in>>Buffer;
// out<<Buffer<<"\t";
out<<IN_H<<endl;
}
else if(strcmp(sign,"08TP")==0)
{
// for(i=0;i<8;i++)
// {
// in>>c;
// out<<c;
//
// }
// out<<"\t";
// for(i=0;i<3;i++)
// {
// in>>d;
// out<<d<<"\t";
// }
//sscanf(str , %lf %lf %lf", &a , &b &c) ;
in>>N1>>E1>>Z1;
out<<N1<<"\t"<<E1<<"\t"<<Z1<<"\t"<<endl;
// in>>Buffer;
// out<<Buffer<<"\t";
// out<<endl;
}
else if(strcmp(sign,"09F1")==0)
{
for(i=0;i<8;i++)
{
in>>c;
}
for(i=0;i<8;i++)
{
in>>c;
out<<c;
}
out<<"\t";
in>>SD>>va>>ha>>Buffer;
sinz=sin(va*pi/180.0);
cosz=cos(va*pi/180.0);
sinaz=sin(ha*pi/180.0);
cosaz=cos(ha*pi/180.0);
N1=N0+SD*sinz*cosaz;
E1=E0+SD*sinz*sinaz;
Z1=Z0+SD*cosz+IN_H-rh;
out<<N1<<"\t"<<E1<<"\t"<<Z1<<"\t"<<Buffer<<endl;
}
else if(strcmp(sign,"03NM")==0)
{
in>>rh;
out<<rh<<endl;
}
else
{
continue;
}
}
}
else if(m_InstrSeled==2)
{
//Topcon
while(!in.eof())
{
int i=0;
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
while(c!='_'&& !in.eof())
{
pointnumber[i++]=c;
in>>c;
}
pointnumber[i]='\0';
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>N1;
N1/=1000.0;
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>E1;
E1/=1000.0;
in>>c;
while(c!='+'&& !in.eof())
{
in>>c;
}
in>>Z1;
Z1/=1000.0;
out<<pointnumber<<"\t\t"<<N1<<"\t\t"<<E1<<"\t\t"<<Z1<<endl;
}
}
in.close();
out.close();
}
void CCommWizardDlg::OnSelchangeSkinSel()
{
// TODO: Add your control notification handler code here
m_SkinSeled = m_SkinSel.GetCurSel();
if(m_SkinSeled==0)
{
m_csskinsel="Devior.smf";
}
else if(m_SkinSeled==1)
{
m_csskinsel="corona.smf";
}
else if(m_SkinSeled==2)
{
m_csskinsel="x-plus.smf";
}
}
void CCommWizardDlg::OnRADIOGuanCe()
{
// TODO: Add your control notification handler code here
m_SkinSeled=0;
}
void CCommWizardDlg::OnRADIOZuoBiao()
{
// TODO: Add your control notification handler code here
m_SkinSeled=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -