1

GPS データを Sqlite データベースに保存しようとしています。DDMS 経由で KML ファイルからデータを取得し、次の方法で GeoPoint に保存します。

GeoPoint p = new GeoPoint(latitude,longitude)

問題はGeoPoint()、double 形式で定義されていないため、lon と lat を int としてのみ受け入れることです。経度が 45.3242355 の場合、これは int-453242355 として Sqlite に保存されます。そして、これを使用して地図上のジオポイント間に線を引きたいのですが、この整数形式は緯度と経度の範囲外であるため、できます。実際の形式のデータを取り戻すにはどうすればよいか教えてもらえますか?

4

1 に答える 1

2

10^-6 (1e-6) を掛けます (倍精度から整数形式に変換するには、10^6 (1e6) を掛けます)。GeoPoint で使用される整数形式はデータを失うことはありません。ドキュメントで指定されているように、度ではなくマイクロ度です。

(これは、算術を簡素化し、高価な浮動小数点演算と FP エラーを回避するために、通貨フィールドが $2.36 の値を「236」として格納する方法に似ています)。

于 2011-03-28T16:22:20.203 に答える