Phonegape と jQuery mobile を使用して、Android スマートフォン用のアプリを作成しています。
特定の地理位置情報を指す矢印を使用するアプリを構築したいので、ユーザーはそのポイントに到達するためにどの方向に行かなければならないかがわかります。
したがって、目的地の地理的位置までの角度 (できれば度数) を決定する関数または式が必要です。誰も私がこれを行う方法を知っていますか?
Phonegape と jQuery mobile を使用して、Android スマートフォン用のアプリを作成しています。
特定の地理位置情報を指す矢印を使用するアプリを構築したいので、ユーザーはそのポイントに到達するためにどの方向に行かなければならないかがわかります。
したがって、目的地の地理的位置までの角度 (できれば度数) を決定する関数または式が必要です。誰も私がこれを行う方法を知っていますか?
あなたが探しているのは方位角と呼ばれ、それは与えられた物体と北の間の角度です。
その角度を見つけるには、次の式を使用します。a = arctan(|(y2-y1)/(x2-x1)|) * 180/pi
ここで、点Aは(y2、x2)であり、点Bは(y1、x1)です。
コードでそれをどのように行うかについては、私にはわかりません。私はそれらのプラットフォームでは動作しません。誰かがこれについて何か意見がありますか?
測地線距離を使用して計算する必要があります。そうしないと、計算された角度が大幅にずれます。極に近いほど。
Android の場合、このように簡単に実行できます。
data class GpsLocation(
val latitude: Float, // Runs from south-pole to north pole
val longitude: Float // Runs East-West
)
fun GpsLocation.toLocation(): Location {
val location = Location(LocationManager.PASSIVE_PROVIDER)
location.latitude = latitude.toDouble()
location.longitude = longitude.toDouble()
//location.time = System.currentTimeMillis()
return location
}
fun GpsLocation.angleToOther(other: GpsLocation): Float =
toLocation().bearingTo(other.toLocation())