經過廣泛的研究和有趣的學習谷歌的映射api後,我正在構建一個數字天線地圖應用程序。在這一點上,項目計劃的下一步是建立一個基於用戶地址的輸入定位數字電視臺的谷歌地圖的內存映射覆制。因此,我使用這個數學代碼來表達谷歌地圖中心的方位和數據庫結果集中的緯度/經度。映射數學和Javascript
我的問題是:我如何完成數學以顯示軸承的度數?
這個代碼是返回下面的數組結果集數學:
1.21
1.10
1.10
1.10
1.10
2.62
-0.29
-1.17
0.12
3.04
var y = Math.sin(longitude-center.lng()) * Math.cos(latitude);
var x = Math.cos(center.lat())*Math.sin(latitude) - Math.sin(center.lat())*Math.cos(latitude)*Math.cos(longitude-center.lng());
var bearing = (Math.atan2(y, x)).toFixed(2);
似乎有東西在我的計算失蹤。數據庫表將經度值保持爲負數,以表示全球上西部象限。
任何建議來完成我的數學將節省一百萬nuerons,我已經燒了一萬億。
服用度弧度的建議,我已經修改了javascript代碼:
var radLat1 = center.lat() * Math.PI/180;
var radLat2 = latitude * Math.PI/180;
var radLng1 = center.lng() * Math.PI/180;
var radLng2 = longitude * Math.PI/180;
var y = Math.sin(radLng2- radLng1) * Math.cos(radLng2);
var x = Math.cos(radLat1)*Math.sin(radLat2) - Math.sin(radLat1)*Math.cos(radLat2)*Math.cos(radLng2-radLng1);
var bearing = (Math.atan2(y, x)).toFixed(2);
URL測試項目選址:click here
在頁面底部的DIV是返回的結果集從2個陣列中,第一個保持距離,第二個保持軸承測量。
謝謝賈斯汀 – rjsteward