0

私は自分のデバイスで座標を取得していますが、サーバーの座標でこの座標を検証する必要があります。たとえば、100メートルの範囲を設定した場合、両方が異なるか同じであるか、範囲内であるか、データのようではありません。

いずれにせよ、両方の座標を検証する必要があります。誰かが私に提案しますか????

4

1 に答える 1

3
private static Double FindDistance(Double lat1, Double lon1, Double lat2, Double lon2)
{
    const Int32 R = 6371; // km
    Double dLat = (lat2 - lat1) / (180 / Math.PI);

    Double dLon = (lon2 - lon1) / (180 / Math.PI);

    Double a = Math.Sin(dLat / 2) * Math.Sin(dLat / 2) +
               Math.Cos(lat1 / (180 / Math.PI)) * Math.Cos(lat2 / (180 / Math.PI)) *
               Math.Sin(dLon / 2) * Math.Sin(dLon / 2);

    Double c = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));
    return (R * c);
}
于 2012-04-04T07:17:54.077 に答える