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

📄 jbjs.cpp

📁 evc编程,使用数据库软件
💻 CPP
字号:
// Jbjs.cpp: implementation of the CJbjs class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "dzct.h"
#include "Jbjs.h"
#include <math.h>

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CJbjs::CJbjs()
{

}

CJbjs::~CJbjs()
{

}

double CJbjs::DFM_M(double dfm)
{
	double D,F;
	dfm+=0.00000000000001;
	dfm=modf(dfm,&D);//取度
	dfm=modf(dfm*100,&F);//取分
	return D*3600+F*60+dfm*100;//回秒值
}



double CJbjs::A(double L, double R)
{
	L=DFM_M(L);
	R=DFM_M(R);
	return (R-L-180*3600)/2.0;
}

double CJbjs::_2C(double L, double R)
{
	L=DFM_M(L);
	R=DFM_M(R);
	double _2c=L+180*3600-R;
	if(_2c>648000)
		_2c-=1296000;
	else if(_2c<-648000)
		_2c+=1296000;
	return _2c;
}

double CJbjs::I(double L, double R)
{
	L=DFM_M(L);
	R=DFM_M(R);
	return (L+R-1296000)/2;
}

double CJbjs::js_glc(double f0, double f1)//计算归零差
{
	f0=DFM_M(f0);
	f1=DFM_M(f1);
	double glc=fabs(f0-f1);
	if(glc>=648000)
		return fabs(glc-1296000);
	else
		return glc;
}

double CJbjs::fxz(double L, double R,double F0)//计算普通方向值
{
	double F=fxz_f0(L,R)-F0;
	if(F<0)
		return F+360*3600;
	else
		return F;
}

double CJbjs::fxz_f0(double L, double R)//计算1方向值
{
	L=DFM_M(L);
	R=DFM_M(R);
	if(L<R)
		return (L+R-180*3600)/2;
	else
		return	(L+R+180*3600)/2;

}

double CJbjs::fxz_0_f0(double L, double R, double F0)//计算带归零的 1方向值
{
	double gl=fxz_f0(L,R);
	double A=(gl+F0)/2;
	if(fabs(F0-gl)>180*3600)
	{
		if(A>=180*3600)
			return A-180*3600;
		else
			return A+180*3600;
	}
	else
		return A;
}

⌨️ 快捷键说明

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