最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

golang與php實現(xiàn)計算兩個經(jīng)緯度之間距離的方法

 更新時間:2016年07月22日 15:12:59   作者:dotcoo  
這篇文章主要介紹了golang與php實現(xiàn)計算兩個經(jīng)緯度之間距離的方法,結(jié)合實例形式對比分析了Go語言與php進行經(jīng)緯度計算的相關(guān)數(shù)學(xué)運算技巧,需要的朋友可以參考下

本文實例講述了golang與php實現(xiàn)計算兩個經(jīng)緯度之間距離的方法。分享給大家供大家參考,具體如下:

golang版本:

復(fù)制代碼 代碼如下:
package main
import (
    "fmt"
    "math"
)
func main() {
    lat1 := 29.490295
    lng1 := 106.486654
    lat2 := 29.615467
    lng2 := 106.581515
    fmt.Println(EarthDistance(lat1, lng1, lat2, lng2))
}
// 返回值的單位為米
func EarthDistance(lat1, lng1, lat2, lng2 float64) float64 {
    radius := float64(6371000) // 6378137
    rad := math.Pi/180.0
    lat1 = lat1 * rad
    lng1 = lng1 * rad
    lat2 = lat2 * rad
    lng2 = lng2 * rad
    theta := lng2 - lng1
    dist := math.Acos(math.Sin(lat1) * math.Sin(lat2) + math.Cos(lat1) * math.Cos(lat2) * math.Cos(theta))
    return dist * radius
}

php版本:

<?php
// 返回值的單位為米
function pc_sphere_distance($lat1, $lon1, $lat2, $lon2, $radius = 6371000) {
  $rad = doubleval(M_PI/180.0);
  $lat1 = doubleval($lat1) * $rad;
  $lon1 = doubleval($lon1) * $rad;
  $lat2 = doubleval($lat2) * $rad;
  $lon2 = doubleval($lon2) * $rad;
  $theta = $lon2 - $lon1;
  $dist = acos(sin($lat1) * sin($lat2) + cos($lat1) * cos($lat2) * cos($theta));
  return $dist * $radius * 1000;
}
$lat1 = 29.490295;
$lon1 = 106.486654;
$lat2 = 29.615467;
$lon2 = 106.581515;
echo pc_sphere_distance($lat1, $lon1, $lat2, $lon2);

希望本文所述對大家Go語言程序設(shè)計有所幫助。

相關(guān)文章

最新評論

临夏市| 东方市| 航空| 光泽县| 崇阳县| 津市市| 东山县| 阳江市| 舞阳县| 浠水县| 南丹县| 易门县| 土默特右旗| 宁安市| 大化| 石嘴山市| 泗洪县| 安泽县| 鸡西市| 南陵县| 丰城市| 海南省| 屯昌县| 始兴县| 酒泉市| 乐安县| 当涂县| 综艺| 黎川县| 南召县| 岳阳市| 凯里市| 尼木县| 丰顺县| 关岭| 津南区| 镇远县| 沁阳市| 贵州省| 玉环县| 道孚县|