go 语言经纬度坐标转换到平面坐标

//经纬度坐标转换到平面坐标
func MillierConvertion(lat float64, lon float64) [2]float64 {
   var L, H, W, temp, mill, x, y float64
   L = 6381372 * math.Pi * 2 //地球周长
   W = L                     // 平面展开后,x轴等于周长
   H = L / 2                 // y轴约等于周长一半
   mill = 2.3                // 米勒投影中的一个常数,范围大约在正负2.3之间
   temp = math.Pi
   x = lon * temp / 180                           // 将经度从度数转换为弧度
   y = lat * temp / 180                           // 将纬度从度数转换为弧度
   y = 1.25 * math.Log(math.Tan(0.25*temp+0.4*y)) // 米勒投影的转换
   // 弧度转为实际距离
   x = (W / 2) + (W/(2*math.Pi))*x
   y = (H / 2) - (H/(2*mill))*y
   var result = [2]float64{x, y}
   return result
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值