MATLAB高斯正反算
MATLAB高斯正反算
// 高斯克吕格.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include
//#include "MyFunction.h"
#include "Zhengfansuan.h"
#include
using namespace std;
void zhengsuan();
void fansuan();
void main()
{
zhengsuan();
fansuan();
printf("/n over!");
}
void zhengsuan()
{
double myB,myL;
cout<
cout<
myB=angle To Degree();
cout<
myL=angleToDegree();
zhengsuan myzhengsuan1(myB,myL);
printf("Radian B=%f L=%f \n",myZhengsuan1.getrB(),myZhengsuan1.getrL());
? myZhengsuan1.printLocation();?
}?
voidfansuan()
{
doublemyX,myY;
cout<
cout<
cin>>myX>>myY;
FansuanmyFansuan1(myX,myY);
myFansuan1.printLocation();
}
Zhengfansuan.h
Zhengfansuan.h : interface for the Zhengsuan class.
#if !defined(AFX_ZHENGSUAN_H__2655EA28_E810_44A3_8F14_56421A7B4466__INCLUDED_)
#define AFX_ZHENGSUAN_H__2655EA28_E810_44A3_8F14_56421A7B4466__INCLUDED_
#if _MSC_VER > 1000 #pragma once #endif
// _MSC_VER > 1000 #define rouSecond 206264.806247096355
#include "MyFunction.h" #include
#include
using namespace std;
classZhengsuan
{ public: Zhengsuan();
Zhengsuan(double fB,doublefL);
doublegetX();
doublegetY();
doublegetrB();
doublegetrL();
voidprintLocation();
virtual ~Zhengsuan();
private:?
?
?double?x;?
?double?y;//大地坐标??
?double?X;?
?double?Y;//国家统一坐标??
?double?B;??doublerB;??intBsecond;??double?L;??doublerL;?
?//输入的大地纬度B,大地经度L,rB,rL为对应弧度表示值,Bsecond为换算成秒数值?
??
?int?n;//带号n???
double?L0;//中央经线纬度L0??
double?LDot;//纬度差L-L0?
?intLDotSecond;//换算成秒的纬度差????
?double?l;??double?N;??double?a0;??double?a3;??double?a4;??double?a5;?
?double?a6;//七个计算参数????};??
#endif?
//?!defined(AFX_ZHENGSUAN_H__2655EA28_E810_44A3_8F14_56421A7B4466__INCLUDED_)
#include?"Zhengsuan.h"?
Zhengsuan::Zhengsuan()
{
}
Zhengsuan::Zhengsuan(double fB,doublefL)
{