Maison > Java > javaDidacticiel > le corps du texte

Comment calculer la distance orthodromique et générer des cadres de délimitation à partir de points de latitude et de longitude en Java ?

Linda Hamilton
Libérer: 2024-11-01 01:00:02
original
362 Les gens l'ont consulté

How to Calculate Great Circle Distance and Generate Bounding Boxes from Latitude and Longitude Points in Java?

Calcul de la distance et génération de cadres de délimitation à partir de points de latitude et de longitude en Java

Mesure des distances entre les coordonnées de latitude et de longitude, connues sous le nom de distance orthodromique, est essentiel pour les applications géospatiales. De plus, la création de cadres de délimitation autour de points à l'aide de distances permet la visualisation et l'analyse.

Calcul de la distance orthodromique

La formule Haversine, une méthode largement utilisée pour calculer les distances orthodromiques, peut être implémenté en Java comme suit :

<code class="java">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;
}</code>
Copier après la connexion

Générer des boîtes englobantes

Une fois la distance calculée, déterminer les points qui représentent la boîte englobante nécessite :

  1. Calcul du point nord :

    • Ajoutez la distance fournie à la latitude du point d'origine.
    • Maintenez la même longitude.
  2. Calcul du point Est :

    • Conservez la même latitude que le point d'origine.
    • Ajoutez la distance fournie à la longitude du point d'origine.

En combinant le point d'origine avec les points nord et est, un cadre de délimitation peut être généré.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!