【IDL代码库】经纬度转换为Web墨卡托坐标
经纬度转化为Web墨卡托坐标的公式在网上都能搜得到,现在利用IDL实现此功能。废话不多说,代码如下:
;经纬度转换为Web墨卡托
PRO WGS84_to_WebMercator, Lon=Lon, Lat=Lat, WebX=WebX, WebY=WebY
;计算Web Mercator X坐标
IF KEYWORD_SET(Lon) && ARG_PRESENT(WebX) THEN $
WebX = (Lon/180.0D)*20037508.34D
;计算Web Mercator Y坐标
IF KEYWORD_SET(Lat) && ARG_PRESENT(WebY) THEN BEGIN
WebY=DBLARR(N_ELEMENTS(Lat))
FOR i=0,N_ELEMENTS(Lat)-1 DO BEGIN
IF Lat[i] GT 85.05112D THEN BEGIN
WebY[i] = 85.05112D
ENDIF ELSE IF Lat[i] LT -85.05112D THEN BEGIN
WebY[i] = -85.05112D
ENDIF ELSE BEGIN
WebY[i] = ALOG(TAN((90.0D + Lat[i])*!PI/360))/(!PI/180D)
WebY[i] = WebY[i]*20037508.34D/180
ENDELSE
ENDFOR
ENDIF
END
调用方法如下:
首先在IDL工作台中新建文件,将代码拷贝到编辑器中,保存为WGS84_to_WebMercator.pro文件,编译后即可在控制台调用,格式如下:
IDL> Lon = [111.4, 120.54, 123.23]
IDL> Lat = [34.56, 48.65, 54.32]
IDL> WGS84_to_WebMercator, Lon=Lon, Lat=Lat, WebX=WebX, WebY=WebY
IDL> print, WebX, WebY
分类:
IDL代码库
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理