2012-03-16 16 views
0

我試圖用我自己的相機應用程序使用地理標記。我正在做的是以十進制值(例如緯度= 6.8447375)獲取當前的地理位置,並且想要將其轉換爲DMS format以便在ExifInterface中使用public static final String TAG_GPS_LATITUDE字段。根據Android documentation我需要給出分母(如在文檔denom1,denom2,denom3中)我必須使用那些分母的正確值是什麼?有沒有計算這些分母的標準方法。當我使用denom1 = 1,denom2 = 1和denom3 = 1000時,我在我的實際位置附近獲得了不同的位置。我如何提高準確度?Android ExifInterface TAG_GPS_LATITUDE denom值

回答

1

你是否提供了正確的分子值去跟那些分母?

NUM1/denom1 =度

NUM2/denom2 =分鐘

NUM3/denom3 =秒

我目睹大多數相機編碼值1,1,1000爲分母。

讓我們用你的樣品值,並將其轉換成精確的合理值:

6.8447375度

步驟如下:

1)取角的整個部分

num1 = 6/denom1 = 1 - > 6度

2)將分數人部分60,然後採取的整個部分: 0.8447375 * 60 = 50.68425

NUM2 = 50/denom2 = 1 - >50分鐘

3)減去6度50' (6.833333333)從原來的值= 0.0114041667,然後通過3600000(每度3600秒×1000)

NUM3 = 41055/denom3 = 1000乘 - >41.055秒

你的位置現在編碼爲6度,50' 41.055"

+0

你已經提到「**大部分相機編碼分母**的值1,1,1000「。我知道我想知道的關於這些分母的計算。如果它們是特定於設備的,我們如何才能使這些分母編程化。 – AnujAroshA 2012-03-28 03:13:01

+0

只要您獲得所需的準確性,分母就無所謂了。這是使用合理性的關鍵。正如我所演示的,1,1,1000的標準分母對於精確指定GeoPoint來說是完美無缺的。 – BitBank 2012-03-28 03:15:06