2012-01-23 40 views
0
Lat – Long Converter ,Angle and Distance Calculator 

該算法用於將給定的緯度和經度位置轉換爲XY座標系。該算法還可以找出任意兩個位置之間的角度和距離以及它們之間的角度。距離矩陣是通過找出每個客戶與其他每個客戶的距離並將其傳遞給最近鄰居算法而形成的。Lat - Long轉換器,角度和距離計算器

僞碼

  1. 轉換所有給定的座標位置爲弧度。
  2. 將r設置爲lat,long值之和的平方根值。
  3. 將角度設置爲旋轉角度的弧度值。
  4. 如果r大於0
    a)將ct設置爲lat除r的除數值。
    b)將st設置爲long by r的除數值。
    c)將X座標值設置爲r值的乘積,即ct與角度餘弦值的乘積之和與乘積st與角度Sin值之和的乘積。
    d)同樣找到Y座標值作爲r值的乘積,st的乘積與角度的餘弦值的乘積之和與乘積ct與角度的Sin值之和的乘積。 e)保存更新爲最終的X & Y值。
  5. End if
  6. 調用find_angle查找depo和客戶之間的角度。
  7. 調用Find_diatance來查找2個係數之間的距離。
  8. 返回X,Y,角度和距離。

我coudn't解決了第四和第五點..你能幫助我形成一個公式來解決它

+2

向我們展示您已經寫過的代碼4. – log0

+3

第五點?你的意思是'}'? –

回答

1

緯度和經度是球體上的座標。 XY座標通常是平面上的座標。在它們之間轉換並不合理。

您可以直接計算兩個緯度/經度座標之間的距離;這個距離被稱爲大圓距離。幾個stackoverflow問題包括如何做到這一點。 Here's一。

如果你正在尋找最近的鄰居,你是否真的需要這個角度?

4

這是我對第4步的解釋。C:

設置X座標值
x =

設置X座標值作爲產物:
x = () * ()

設置X座標值作爲的產品r值
x = (r) * ()

設置X座標值作爲r值的乘積,所述的總和:
x = (r) * (() + ())

設置X座標值作爲r值的產物,的總和的產物:
x = (r) * ((() * ()) + ())

設置X座標值作爲r值的產物,的的克拉的乘積的總和:
x = (r) * (((ct) * ()) + ())

設置X座標值作爲r值的乘積,所述CT 餘弦值的乘積的總和:
x = (r) * (((ct) * (cos())) + ())

設置X座標值作爲r值的產物,與餘弦值的角度 CT的乘積的總和:
x = (r) * (((ct) * (cos(angle))) + ())

設置X座標值作爲r的乘積值,與所述角的與產品ST的與角的SIN值之和餘弦值CT的乘積的總和:
x = (r) * (((ct) * (cos(angle))) + ((st) * (sin(angle))))

刪除不必要的括號:
x = r * (ct * cos(angle) + st * sin(angle));

+0

ya ... thx ..然後wat將是在第3步中指定的旋轉角度。 – sudar

+0

請原諒我,因爲我已經過了3年時間,因爲我使用GPS系統編程。我建議在網上搜索「GPS座標映射」,並用秸稈建立視覺模型。 –