6

最初に質問を注意深く読んでください...

徒歩や車などではなく、まっすぐな距離が必要です。

以下に示すこの画像を見てください。

真っ直ぐ

Google は車と運転での距離を提供してくれます。

しかし、私はそれを望んでいません。2つの場所(緯度 - 経度)間の直線距離が必要です。

RED LINEとして表示されます。

注: Googleマップに赤い線を入れたくありません。距離を単位(マイル、kmなど)で表示したいだけです。

4

3 に答える 3

15

アンドロイド

double distance

Location locationA = new Location(“point A”)

locationA.setLatitude(latA);

locationA.setLongitude(lngA);

Location locationB = new Location(“point B”);

locationB.setLatitude(latB);

LocationB.setLongitude(lngB);

distance = locationA.distanceTo(locationB);

数学的に

a = distance in degrees //meterConversion = 1609;

b = 90 - latitude of point 1

c = 90 - latitude of point 2

l = longitude of point 1 - longitude of point 2

Cos(a) = Cos(b)Cos(c) + Sin(b)Sin(c)Sin(l)

d = circumference of Earth * a / 360 // circumference of Earth = 3958.7558657440545D km
于 2013-07-11T13:45:08.150 に答える