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

📄 conv.c

📁 GPS导航系统中
💻 C
字号:
//#include "coord.h"
#include "conv.h"
#include <math.h>

double relfa(double r){
		return log(tan(r*0.0087266 + 0.7853981));  // 0.7853981为45弧度
		                                           //0.0087266我Pi/360度
}

//经纬度转换直角坐标
void ConvToXY(double jing, double wei, long *cx, long *cy)
{
	*cx = (long)((m_fMaxCX * (jing-m_fMapjw[0]))/(m_fMapjw[1]-m_fMapjw[0])+0.5);
	*cy = (long)((m_fMaxCY * (relfa(m_fMapjw[2])-relfa(wei)))/(relfa(m_fMapjw[2]) - relfa(m_fMapjw[3]))+0.5);
}

//多经纬度转换直角坐标
void ConvToXYs(POINTSCR *points, POINTDB *pointsdb,int n){
	int i;
	for(i=0;i<n;i++){
		ConvToXY((*pointsdb).x, (*pointsdb).y, &((*points).x), &((*points).y));
		pointsdb++;points++;
	}
}
//转换成屏幕坐标
void XYsToDPs(POINTSCR *points,int n){
	int i;
	for(i=0;i<n;i++){
		(*points).x-=offsetx;
		(*points).y-=offsety;
		points++;
	}
}

void XYsToDP(long *cx, long *cy){
	(*cx)-=offsetx;
	(*cy)-=offsety;
}

⌨️ 快捷键说明

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