1. 程式人生 > >C# 已知經緯度計算兩點距離函式

C# 已知經緯度計算兩點距離函式




public Task<double> GetDistance(double lat1, double lon1, double lat2, double lon2)
        {
            int R = 6371;


            double rLat1 = ToRadian(lat1);
            double rLat2 = ToRadian(lat2);


            double dLat = rLat2 - rLat1;
            double dLon = ToRadian(lon2 - lon1);


            double a = Math.Pow(Math.Sin(dLat / 2), 2) +
                Math.Pow(Math.Sin(dLon / 2), 2) *
                Math.Cos(rLat1) * Math.Cos(rLat2);


            double b = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));


            return Task.FromResult((R * b));
        }


相關推薦

C# 經緯度計算兩點距離函式

public Task<double> GetDistance(double lat1, double lon1, double lat2, double lon2) {

Oracle根據兩點經緯度計算兩點距離

Oracle資料庫根據兩點經緯度計算兩點的距離 abs(6371.004 * acos(sin(緯度1) *sin(緯度2) * cos(經度1 - 經度2) +cos(緯度1) * cos(緯度2)) * acos(-1) / 180) 舉例:現有兩個座標點A(經

小程式根據經緯度計算兩點距離

小程式根據兩地的經緯度計算距離://計算兩點位置距離 getDistance: function (lat1, lng1, lat2, lng2) { lat1 = lat1 || 0; lng1 = lng1 || 0; lat2 = lat2

C# 圓心和兩點,用DrawArc()畫圓弧(演算法)

            //oa和X軸上向量的點乘積             int Point_Mul_a = (Vector_ax * Vector_Xx) + (Vector_ay * Vector_Xy);             double Mul_a = Math.Sqrt(Vector_ax

js根據經緯度計算兩點距離

地球是一個近乎標準的橢球體,它的赤道半徑為6378.140千米,極半徑為6356.755千米,平均半徑6371.004千米。如果我們假設地球是一個完美的球體,那麼它的半徑就是地球的平均半徑,記為R。如果以0度經線為基準,那麼根據地球表面任意兩點的經緯度就可以計算出這兩點間的地表距離(這裡忽略地球表面地形對計

地面上兩點經續度求兩點球面距離函式Flex及C

Flex版本private function getDis(lat1:Number,lng1:Number,lat2:Number,lng2:Number):Number{ var radlat1:Number=lat1*3.1415926/180.0;

A,B兩點C點(不在直線AB上)座標,求在直線AB上距離A點距離為線段AC長度的點D座標

(取自定位導航專案) 哇!這不就是一道初中的數學題嘛!But...                                

根據經緯度計算兩點之間的距離的公式推導過程以及google.maps的測距函式

首先,你要想了解清楚經緯度的具體定義,看完後再往下看,便會一目瞭然。 將地球看成一個球體,A(WA,JA)、B(WB,JB)兩點分別為兩個點的位置,其中W為緯度,J為經度,O為球心,球半徑為R,過A點畫出A的緯度圈並與B所在的經度相交與點C,分別過B、C兩點做球心O所在直線

經緯度和高德地圖計算兩點距離面積

關於經緯度,可以看huanhuan的部落格根據兩點經緯度計算距離 文章詳細介紹了經緯度以及根據經緯度,計算兩點直接的距離。 高德地圖中,計算兩點直線距離的公式如下: //根據經緯度獲取兩點距離 public static int calculateDistance(doubl

根據經緯度計算兩點之間距離

tostring 配置 and isempty eva iter() web ica err web.xml配置 &lt;!-- xss過濾器 --&gt; &lt;filter&gt; &lt;filte

php通過經緯度計算兩點之間的距離

php通過經緯度計算兩點之間的距離 只要給出兩點的經緯度就可以計算出兩點的距離了 /**計算兩點的距離: * * @param $Y a的經度 * @param $X a的維度 * @param $bY 目標經度 * @param $bX 目標維度 * * @retur

經緯度互換、換算成米、兩點經緯度計算兩點間的距離

經緯度互換 度(DDD):E 108.90593度    N 34.21630度     如何將度(DDD):: 108.90593度換算成度分秒(DMS)東經E 108度54分22.2秒?轉換方法是將108.90593整數位不變取108(度),用0.90593*60=54.

C++ 兩點座標和半徑求圓心座標程式

已知圓上的兩點座標和半徑,求圓心。 數學分析:這個題目,涉及到簡單的數學問題,但是計算比較繁瑣。 假設已知圓上的兩點座標分別為N(X1,Y1)和M(X2,Y2),半徑為R,圓心座標為o(a,b),根據數學知識可得到: (x1-a)^2 + (y1-b)^2 = R^2---

根據經緯度計算兩點距離(別問我公式細節,我也沒明白,照搬就行)

import java.util.HashMap; import java.util.Map;    public class MapDistance {               private static double EARTH_RADIUS = 6378.137

圓弧上兩點座標和半徑求圓心座標的演算法(C++)

#include<iostream> #include<math.h> using namespace std; void YuanXin(double x1,double y1,double x2,double y2,double R,double

根據兩點經緯度計算精確距離,結果和百度地圖測距一樣——java實現

根據兩點經緯度計算精確距離——java實現 在網上看了好多根據經緯度計算距離的程式碼都不精確,而且我測試了把經度調整到北極點(lon=90),緯度不改變,結果距離還是那麼多! 先看一

java根據兩個地點的經緯度計算兩點距離

上程式碼(複製到專案中可直接使用):import java.text.DecimalFormat; /** * @author [email protected] * @date 201

android根據經緯度計算兩點之間的距離

原文地址:http://284772894.iteye.com/blog/1810222 package a; public class Distance {  private static final double EARTH_RADIUS = 6378137.0;  p

python實現根據兩點經緯度計算實際距離

下面是python 兩種方法實現的距離的計算,可能誤差有一定的區別 # -*- coding: utf-8 -*- from math import* def Distance1(Lat_A,Lng

計算兩點距離

() ner oid clas java next 技術 ima n) import java.util.Scanner;  public class Jisuanjl{   public static void main(String[] args){     Scan