墨卡托投影C++编程

墨卡托投影C++编程,第1张

我用的是C语言,希望对你有所帮助,程序如下:

#include<stdio.h>

#include<math.h>

int main()

{

float U,r0,e=0.081813334,a=6378245,x,y,r,u,p,t=3.1415926,g,h,l,x1,y1,N0

float B,B0=30.0,L,L0=120.0

for(B=10.0B<=50.0B=B+10.0)

for(L=100.0L<=140.0L=L+10.0)

{

h=e/2

g=(1-e*sin(B/180*t))/(1+e*sin(B/180*t))

U=tan(t/4+(B/180*t)/2)*pow(g,h)

l=(L-L0)/180*t

r=(a*cos(B/180*t))/(sqrt(1-e*e*sin(B/180*t)*sin(B/180*t)))

r0=(a*cos(B0/180*t))/(sqrt(1-e*e*sin(B0/180*t)*sin(B0/180*t)))

y=r0*l

x=r0*log(U)

u=r0/r

p=u*u

x1=0.00001*x

y1=0.00001*y

printf("B=%2.0f\nL=%3.0f\nx1=%f\ty1=%f\t u=%f\t p=%f\n\n\n",B,L,x1,y1,u,p)

}

return 0

}

卡托投影是一种常用于制作地图的投影方式,贴图时可以按照以下步骤进行 *** 作:

1. 打开一个墨卡托投影的地图素材,例如在ArcGIS、QGIS等GIS软件中打开。

2. 在GIS软件的工具栏中找到添加图层或添加数据的按钮,将需要贴图的图片文件导入到GIS软件中。

3. 将导入的图片图层与墨卡托投影地图素材图层对齐,通常需要调整图片图层的位置和大小,以保证与底图吻合。

4. 将图片图层设置为半透明或透明,以便于查看底图信息,同时也便于后续的地名标注和符号绘制。

5. 根据需要,使用GIS软件中提供的工具进行地名标注、符号绘制等 *** 作,使贴图效果更加完美。

6. 最后,导出贴好图的地图文件,可以保存为图片文件或者PDF文件,方便使用和分享。

需要注意的是,墨卡托投影是一种等角圆柱投影,虽然能够保证方向的准确性,但在极地区域会出现较大的形变,因此在贴图时需要对地图信息进行一定程度的调整,以便于保持地图的准确性和美观度。

墨卡托投影的投影方法

百度地图和Google Maps使用的投影方法都是墨卡托投影。

经过墨卡托投影后的经线是均匀分布。

墨卡托投影把纬度为Φ (-90°<Φ<90°)的点投影到

y = ln(tan(45° + Φ/2))

这种投影算法使得赤道附近的纬线较密,极地附近的纬线较稀。极点被投影到无穷远,所以这种投影不适合在高纬度地区使用。Google Maps的选取的范围为 -π<y<π ,这样近似的有 -85°<Φ<85°

以上知识即可实现编程转换。

墨卡托投影,是正轴等角圆柱投影。由荷兰地图学家墨卡托(G.Mercator)于1569年创立。假想一个与地轴方向一致的圆柱切或割于地球,按等角条件,将经纬网投影到圆柱面上,将圆柱面展为平面后,即得本投影。墨卡托投影在切圆柱投影与割圆柱投影中,最早也是最常用的是切圆柱投影。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11327873.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存