com.nttdocomo.device.location
クラス Location

Object
  拡張com.nttdocomo.device.location.Location

public class Location
extends Object
 [iアプリオプションAPI]

測位結果を表します。 このオブジェクトには、緯度・経度・高度・測地系・水平方向の精度といった位置情報、 ならびに測位時刻が格納されています。

緯度や経度の正負の解釈は以下の通りです。
正の角度0負の角度
緯度 北緯 赤道 南緯
経度 東経 本初子午線 西経
例えば、緯度として「-10度」が、経度として「120度」が取得された場合、 このインスタンスは南緯 10 度、東経 120 度の地点を表していることになります。

プログラマが 測位を実施すると、 測位結果が格納されたこのクラスのインスタンスが返却されます。

位置情報 URL のクエリー文字列
位置情報 URL のクエリー文字列には次の2つの形式があります。
各形式のパラメータを以下の表で記します。
i ナビリンク形式のパラメータ
パラメータ オプション/必須 説明
pos 必須 緯度経度
geo 必須 測地系
  • WGS84 測地系は "wgs84"と表します。
  • 東京測地系は "tokyo" と表します。

このパラメータ値のアルファベット部は小文字をサポートします。
アルファベット部に大文字が含まれていた場合の振る舞いは機種依存です。

X-acc オプション 測位レベル(誤差レベル)
精度(水平誤差)との関係は以下になります。
精度(水平誤差)からこのパラメータ値への変換規則
水平誤差 パラメータ値
300m 以上 1
50m 以上、300m 未満 2
50m 未満 3
このパラメータ値から精度(水平誤差)への変換規則
パラメータ値 水平誤差
1 2147483647m(ACCURACY_COARSE)
2 299m(ACCURACY_NORMAL)
3 49m(ACCURACY_FINE)
Joint RFI 形式のパラメータ
パラメータ オプション/必須 説明
lat 必須 緯度
lon 必須 経度
alt オプション 標高
geo 必須 測地系
  • WGS84 測地系は "wgs84" と表します。
  • 東京測地系は "tokyo" と表します。

このパラメータ値のアルファベット部は小文字をサポートします。
アルファベット部に大文字が含まれていた場合の振る舞いは機種依存です。

x-acc オプション 測位レベル
精度(水平誤差)との関係は以下になります。
精度(水平誤差)からこのパラメータ値への変換規則
水平誤差 パラメータ値
300m 以上 1
50m 以上、300m 未満 2
50m 未満 3
このパラメータ値から精度(水平誤差)への変換規則
パラメータ値 水平誤差
1 2147483647m(ACCURACY_COARSE)
2 299m(ACCURACY_NORMAL)
3 49m(ACCURACY_FINE)


[DoJa-5.1 (905i) 以降]
Location オブジェクトの経度に東経 180 度も設定可能です。 Locationオブジェクトの経度に東経 180 度が指定された場合、 西経 180 度に変換されます。

導入されたバージョン:
DoJa-3.0 (505iGPS)、DoJa-4.0LE、DoJa-5.0 (903i)

フィールドの概要
static int ACCURACY_COARSE
          「測位レベル 1」に対応する精度の最悪値 [m] です(=2147483647)。
static int ACCURACY_FINE
          「測位レベル 3」に対応する精度の最悪値 [m] です(=49)。
static int ACCURACY_NORMAL
          「測位レベル 2」に対応する精度の最悪値 [m] です(=299)。
static int ACCURACY_UNKNOWN
          精度が不明であることを表します(=-1)。
static int ALTITUDE_UNKNOWN
          高度が不明であることを表します(=0x80000000)。
static int PREFIX_DIRECTION
          緯度・経度を表す文字列の表記方法として、 先頭に N/S/W/E を指定することを表します(=0)。
static int PREFIX_SIGN
          緯度・経度を表す文字列の表記方法として、 先頭に (+)/- を指定することを表します(=1)。
 
コンストラクタの概要
Location(Degree latitude, Degree longitude)
          緯度・経度を指定して、このオブジェクトを生成します。
Location(Degree latitude, Degree longitude, int altitude, int datum, long timestamp, int accuracy)
          緯度・経度・高度、基づいている測地系、測位時刻、水平方向の精度を指定して、 このオブジェクトを生成します。
Location(String url)
           位置情報 URL を指定して、このオブジェクトを生成します。
Location(String url, int altitude, long timestamp)
           位置情報 URL、高度、測位時刻 を指定して、このオブジェクトを生成します。
Location(String latitude, String longitude, int altitude, int datum, long timestamp, int accuracy)
           緯度・経度・高度、基づいている測地系、測位時刻、水平方向の精度を指定して、 このオブジェクトを生成します。
 
メソッドの概要
 Degree calculateAzimuth(Location dst)
           このオブジェクトに対応する位置から、 指定された目的地への方位角を計算します。
 double calculateDistance(Location dst)
           このオブジェクトに対応する位置と、指定された目的地との地表面の距離を計算します。
 int getAccuracy()
           水平方向の精度を [m] 単位で取得します。
 int getAltitude()
           高度を取得します。
 int getDatum()
          このオブジェクトの緯度・経度・高度が基づいている測地系を取得します。
 String getJointRFIURL()
           このオブジェクトに対応する位置情報 URL のクエリー文字列 (Joint RFI 形式) を取得します。
 Degree