SORU
23 EYLÜL 2008, Salı


Ne kadar mesafe ölçmek ve bir sınırlayıcı kutu Java'da iki enlem ve boylam noktalarına göre oluşturabilir miyim?

İki farklı nokta arasındaki mesafeyi bulmak istiyorum. Biliyorum bu büyük daire mesafesi ile gerçekleştirilebilir. http://www.meridianworlddata.com/Distance-calculation.asp

Bir kez yapılır, bir noktası ve mesafe ile nokta etrafında bir kutu oluşturmak için Kuzey mesafe ve mesafe Doğu olan nokta bulmak istiyorum.

CEVAP
23 EYLÜL 2008, Salı


Burada Haversine formülün bir Java uygulaması. Enlem/uzun-kilometre arasındaki mesafeyi hesaplamak için bir projede bunu kullanacağım.

public static double distFrom(double lat1, double lng1, double lat2, double lng2) {
    double earthRadius = 3958.75; // miles (or 6371.0 kilometers)
    double dLat = Math.toRadians(lat2-lat1);
    double dLng = Math.toRadians(lng2-lng1);
    double sindLat = Math.sin(dLat / 2);
    double sindLng = Math.sin(dLng / 2);
    double a = Math.pow(sindLat, 2)   Math.pow(sindLng, 2)
            * Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2));
    double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
    double dist = earthRadius * c;

    return dist;
    }

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonathan Flavell

    Jonathan Fla

    1 HAZİRAN 2006
  • Justin Case

    Justin Case

    3 EKİM 2011
  • karneson

    karneson

    23 Temmuz 2006

İLGİLİ SORU / CEVAPLAR