資源簡介
Python實現(xiàn)
支持墨卡托投影轉地理坐標及地理坐標轉墨卡托投影的轉換函數(shù)
支持Numpy向量計算,可大批量轉多對經緯度數(shù)據(jù)
代碼片段和文件信息
#?-*-?coding:?utf-8?-*-
#?@Time????:?2018\4\18
#?@Author??:?ShannonSui
#?@File????:?UTMConvertor.py
#?@Desc??:??網絡墨卡托投影變換,球面墨卡托投影
#?@Para??:??輸入為位置值
import?math
import?numpy?as?np
#?地球半周長?單位米
fPerimeterConst?=?20037508.34
#?經緯度轉墨卡托
def?LonLat2Mercator_One(lon?lat):
????xMeter?=?lon?*?fPerimeterConst?/?180
????yMeter?=?math.log(math.tan((?90?+?lat)?*?math.pi/360))/(math.pi/180)
????yMeter?=?yMeter?*?fPerimeterConst/180
????return?xMeteryMeter
#?經緯度轉墨卡托
#?輸入numpy的二維數(shù)組?第0列為Lon,第1列為Lat
def?LonLat2Mercator(lonlatArray):
????lonArray?=?lonlatArray[:0]
????latArray?=?lonlatArray[:1]
????xArray?=?lonArray?*fPerimeterConst/180
????yArray?=?np.log(np.tan((90+latArray)*math.pi/360))/(math.pi/180)
????yArray?=?yArray?*?fPerimeterConst/180
????#?兩個一維數(shù)組垂直拼接,再轉置
????xyArray?=?np.transpose(np.vstack((xArray?yArray)))
????return?xyArray
#?墨卡托轉經緯度
def?Mercator2LonLat_O
評論
共有 條評論