2010-10-22 146 views
3

僅給出一組座標,是否有找到正在使用的比例因子的方法?然後它將被用來計算座標之間的距離。確定地圖中的比例因子

讓我們來看看這個:

在地圖比例尺:(這是給了我們唯一)

  • 點A(33.511615,-86.778809)
  • pointB(34.398558,-87.669116)

在現實世界範圍內:

  • 2點之間的距離=未知

我們可以求出2點之間的距離。 我們可以使用什麼轉換因子將距離轉換爲實際或真實的世界尺度?我們如何獲得轉換因子?

給出的座標是基於小比例模型中繪製的實際點。格式可能看起來很熟悉。難道這個單位默認是英里嗎? 我不知道他們如何提出座標,有什麼想法?

我不確定涉及到什麼底層概念(地理編碼或地理位置?),以及當我嘗試指出某些事情時是否有意義。請幫忙。

+0

其實你不需要知道地圖比例尺,因爲你已經有了絕對座標點,而且你似乎只想要兩點之間的真實距離(否則可以計算,看看我的答案)。但是你確實可以找到這個距離,並且通過三條簡單的規則找到地圖比例尺,這將允許您確定地圖上任意兩點之間的距離。 – heltonbiker 2011-04-20 19:10:44

回答

0

我敢肯定,您需要更多信息來正確縮放距離。你真的需要知道模型的規模。

1

那些看起來像經緯度座標(例如北緯33.511615度,第一個西經緯度86.778809度),將它們放置在阿拉巴馬州。

你確定這些是某種地圖特定座標而不是經緯度?

編輯:如果他們是Lat/Lon,請檢查出this site,它有一個大圓距離計算器和您需要自己做的公式。 This site允許十進制度數而不是分鐘/秒,因此可能更有用。

+0

是的,它是Lat/Lon。 – adrian 2010-10-22 03:59:40

0

這是一個複雜的問題,需要更多的信息和一些你希望用解決方案來完成的考慮。

我打算假設您上面給出的座標來自WGS 84數據,這是當今現代gps系統最常用的方法。

但是,您也知道這些座標將被繪製在哪個地圖投影上非常重要。基本上,由於地球是圓形的(實際上不是完美的圓形,由於地球的旋轉,它有點橢圓形),當我們把它投影到一個平坦的表面時,可以用很多方式完成。用於「平坦化」地球的方法以及地圖的比例(如何「放大」地圖)可以對x/y比例在地圖圖像上進行測量的有用程度產生重大影響。

你投射哪些地圖?如果我知道更多,我想我可以得到更好的幫助。

1

兩個點之間的距離:

POINT1,具有座標LAT1和long1 POINT2,具有座標LAT2和long2

可以計算如下,使用haversine formula(在Python所示代碼):

lat1=radians(lat1) 
long1=radians(long1) 
lat2=radians(lat2) 
long2=radians(long2) 

gradius=6378.137  # greatest earth radius (equator) 
sradius=6356.7523142 # smallest earth radius (pole) 

R=(gradius*sradius)/sqrt((gradius*cos(lat1))**2 + (sradius*sin(lat1))**2) 

d_lat = lat2 - lat1 
d_long = long2 - long1 

a = sin(d_lat/2)**2 + cos(lat1) * cos(lat2) * sin(d_long/2)**2 
c = 2 * atan2(sqrt(a), sqrt(1-a)) 
distance = maior * c 

# and if you want bearing: 
x = sin(d_long) * cos(lat2) 
y = cos(lat2) * sin(lat1) - sin(lat2) * cos (lat1) * cos(d_long) 
bearing = 90-(degrees(atan2(y, -x))) 

當然,它應該進行調整,並適合您的需求。希望能幫助到你。