Distance équirectangulaire de Pythagore
Obtenez en un instant la distance entre deux points proches en traitant la carte comme un plan local : deux coordonnées de Manhattan sont à un peu plus de 5 km. Vous voyez aussi les côtés nord-sud et est-ouest en mètres. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Lat1
- 40,7128
- Lon1
- -74,006
- Lat2
- 40,758
- Lon2
- -73,9855
- Distance (m)
- 5 314,523521
- Distance (km)
- 5,314523521
- Delta lat (m)
- 5 026,010684
- Delta lon (m)
- 1 727,245453
Cette capacité estime la distance qui sépare deux points de la Terre en traitant la carte comme un plan local aplati. Elle convertit la différence de latitude et de longitude en mètres à l'aide d'une échelle basée sur le cosinus de la latitude moyenne, puis applique le théorème de Pythagore à ces décalages est-ouest et nord-sud. Le résultat est une distance au sol approximative en mètres et en kilomètres, ainsi que les écarts projetés pour que vous puissiez auditer les étapes intermédiaires. L'algorithme est entièrement déterministe : aucun appel réseau, aucun échantillonnage aléatoire et aucune horloge. Utilisez-le lorsque vous avez besoin d'une distance rapide et économique pour des points voisins, d'un classement par lots ou d'un support pédagogique sur la projection équirectangulaire, sans le coût d'une formule d'orthodromie complète.
Comment fonctionne la formule équirectangulaire de Pythagore
Sur une sphère, les vrais plus courts chemins sont des orthodromies, mais pour de nombreuses tâches de produit et d'analyse une approximation plane locale suffit. Cet outil utilise la projection équirectangulaire classique : convertissez les deux latitudes et longitudes en radians, prenez la différence de latitude comme l'arc nord-sud sur une sphère de rayon moyen fixe, et mettez à l'échelle la différence de longitude par le cosinus de la latitude moyenne afin que les mètres est-ouest se rétractent près des pôles.
Ces deux décalages en mètres deviennent les côtés d'un triangle rectangle. L'hypoténuse est la distance au sol renvoyée. Nous utilisons un rayon terrestre moyen de six millions trois cent soixante et onze mille mètres, la même constante que celle employée par de nombreux manuels pédagogiques et SIG pour cette méthode.
Cette stabilité importe pour les tests de référence, les répliques multirégionales et les outils hors ligne qui ne doivent pas dériver.
Coordonnées acceptées et valeurs refusées
Envoyez des degrés décimaux sur le globe WGS84. Les latitudes ou longitudes hors plage échouent de la même façon, avec un message qui nomme le champ fautif. Préférez des nombres décimaux stables plutôt qu'un texte degré-minute-seconde ou des références de grille ; convertissez ces formats avant l'appel.
L'exemple de paramètres emploie un court couple à Manhattan pour que la sonde et la documentation restent réalistes. Pour des points identiques, la distance est nulle. Franchir l'antiméridien avec des différences de longitude brutes peut gonfler le résultat ; pour les trajets qui enjambent la ligne de changement de date, normalisez d'abord les longitudes ou utilisez plutôt une méthode d'orthodromie.
Quand utiliser cette approximation plutôt qu'une formule sphérique
Choisissez la distance équirectangulaire de Pythagore lorsque les points sont relativement proches, lorsque vous privilégiez la vitesse maximale sur la précision maximale, ou lorsque vous enseignez ou déboguez des projections cartographiques et souhaitez des écarts intermédiaires en mètres. Les vérifications de rayon de livraison dans une ville, le regroupement de capteurs voisins, les heuristiques approximatives de temps de trajet et les infobulles d'interface s'y prêtent bien.
Pour les itinéraires intercontinentaux, les trajets polaires ou la navigation où une erreur de quelques pour cent compte, préférez plutôt une distance d'orthodromie de type haversine ou Vincenty : ces méthodes tiennent compte plus finement de la courbure terrestre. L'erreur croît avec l'éloignement et avec les latitudes extrêmes, car la projection plane ignore la convergence des méridiens au-delà du facteur d'échelle de la latitude moyenne. Documentez toujours la méthode lorsque vous stockez les résultats, afin que les audits ultérieurs sachent que vous avez employé une approximation.
Les entrées invalides ne consomment jamais de solde, vous pouvez donc valider agressivement les coordonnées avant des traitements par lots.
Cas d’usage
Classement de proximité à l'échelle de la ville
Triez des magasins, des capteurs ou des points de retrait par mètres au sol approximatifs depuis un utilisateur, sans charger de lourde bibliothèque géospatiale.
Enseignement des projections cartographiques
Montrez aux élèves comment les écarts de lat/lon deviennent des mètres est-ouest et nord-sud, puis une hypoténuse de Pythagore, avec des nombres en direct.
Questions fréquentes
Quelle est la précision de la méthode équirectangulaire de Pythagore ?
C'est une approximation plane locale. La précision est bonne pour les distances courtes et moyennes et se dégrade à mesure que l'éloignement croît ou près des pôles. Pour les longs itinéraires d'orthodromie, utilisez plutôt une formule sphérique.
Combien cela coûte-t-il ?
L'outil de la page est gratuit dans votre navigateur. Les entrées invalides ne sont pas facturées.
Comment calculer la distance entre deux coordonnées proches ?
Saisissez la latitude et la longitude des deux points en degrés décimaux. Vous obtenez la distance en mètres et en kilomètres, ainsi que les décalages nord-sud et est-ouest qui forment les deux côtés du triangle rectangle.
Pourquoi les mètres est-ouest rétrécissent-ils près des pôles ?
Parce que les méridiens se rapprochent à mesure que l'on s'éloigne de l'équateur. L'écart de longitude est multiplié par le cosinus de la latitude moyenne : le même écart en degrés couvre moins de mètres aux hautes latitudes.
Que se passe-t-il si les deux points sont de part et d'autre du méridien de 180° ?
L'écart brut de longitude couvre alors presque tout le globe et la distance est fortement gonflée. Normalisez d'abord les longitudes, ou utilisez une méthode de grand cercle pour les trajets qui franchissent la ligne de changement de date.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/geo/pythagorean-geo-distance \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lat1":40.7128,"lon1":-74.006,"lat2":40.758,"lon2":-73.9855}'const res = await fetch("https://api.kit.forhosting.com/geo/pythagorean-geo-distance", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lat1": 40.7128,
"lon1": -74.006,
"lat2": 40.758,
"lon2": -73.9855
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/pythagorean-geo-distance",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lat1": 40.7128,
"lon1": -74.006,
"lat2": 40.758,
"lon2": -73.9855
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/pythagorean-geo-distance", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lat1":40.7128,"lon1":-74.006,"lat2":40.758,"lon2":-73.9855}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lat1":40.7128,"lon1":-74.006,"lat2":40.758,"lon2":-73.9855}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/pythagorean-geo-distance", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"lat1": 40.7128,
"lon1": -74.006,
"lat2": 40.758,
"lon2": -73.9855
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.pythagorean_geo_distance",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Comment fonctionne la formule équirectangulaire de Pythagore
La réponse renvoie les quatre coordonnées transmises, la distance en mètres et en kilomètres, les composantes signées delta_lat_m et delta_lon_m, le nom de la méthode et la constante de rayon, afin que le code en aval puisse journaliser la provenance sans rétro-concevoir la formule.
Plages d'entrée, alias et cas d'échec de l'appel
Les champs de latitude lat1 et lat2 doivent se situer entre moins quatre-vingt-dix et quatre-vingt-dix inclus. Les champs de longitude lon1 et lon2 doivent se situer entre moins cent quatre-vingts et cent quatre-vingts inclus. Des alias courants sont acceptés : latitude1, from_lat, longitude1, from_lon, from_lng, latitude2, to_lat, longitude2, to_lon et to_lng correspondent aux mêmes quatre nombres requis. Les valeurs peuvent arriver sous forme de nombres JSON ou de chaînes numériques ; les valeurs non finies, les chaînes vides et les champs requis manquants échouent avec invalid_input et ne sont pas facturés.
Quand utiliser cette approximation plutôt qu'une formule sphérique
Lancez l'outil gratuit du navigateur pour inspecter un seul couple, ou appelez l'API lorsqu'une automatisation a besoin du même résultat déterministe, à $0.002 par requête réussie.
Cas d'intégration
Caractéristiques de distance dans un pipeline par lots
Ajoutez une colonne distance_m économique et déterministe aux fichiers CSV ou aux flux d'événements pour l'analytique et les caractéristiques ML sur de courtes portées.
Questions techniques
Que renvoie ce calculateur ?
Il renvoie les deux points, la distance en mètres et en kilomètres, les écarts de latitude et de longitude projetés en mètres, l'étiquette de méthode pythagorean_equirectangular et la constante de rayon terrestre utilisée.
Quand l'appel échoue-t-il ?
Il échoue avec invalid_input lorsqu'une coordonnée requise est manquante ou non finie, ou lorsque la latitude est hors de −90…90 ou la longitude hors de −180…180.
Le résultat du navigateur est-il identique à celui de l'API ?
Oui. Les deux exécutent le même solve() pur dans lib.js, si bien que des entrées identiques produisent des distances et des écarts identiques.