Relèvements des arêtes d’un polygone
Pour le carré (0, 0), (0, 1), (1, 1), (1, 0), les quatre côtés partent à 90°, 0°, 270.008726° et 180° depuis le nord vrai, le dernier côté revenant au départ. Chaque tronçon reçoit sa propre direction de départ sur le grand cercle. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Précision
- 6
- Nombre de sommets
- 4 degrees
- Nombre d'arcs
- 4
- Référence
- true_north
Les relèvements d’arêtes transforment une liste ordonnée de sommets géographiques en une direction par segment. Saisissez latitude et longitude, indiquez si la géométrie doit revenir au premier point et obtenez les relèvements initiaux de grand cercle depuis le nord vrai. Le résultat conserve les indices et les extrémités avec un arrondi cohérent, pour l’annotation cartographique, le contrôle d’itinéraires et les traitements géographiques automatisés.
Préparez les sommets ordonnés du tracé
Saisissez les sommets dans l’ordre de parcours. Chaque ligne contient lat entre -90 et 90 et lon entre -180 et 180, en degrés décimaux. Inverser l’ordre modifie tous les relèvements.
Par défaut, closed vaut true et ajoute l’arête du dernier sommet au premier. Choisissez false pour une polyligne ouverte. Si le premier sommet est répété à la fin, ce doublon de fermeture est retiré.
Un polygone fermé exige trois sommets normalisés et une polyligne deux. Les points consécutifs identiques sont refusés, car une arête de longueur nulle n’a pas de direction. Vérifiez l’ordre latitude-longitude de votre source.
Interprétez le relèvement de chaque arête
La valeur est normalisée entre 0 inclus et 360 exclu. Il s’agit du relèvement initial de grand cercle, et non d’un cap magnétique ni forcément d’une route constante sur une longue arête. precision accepte de zéro à douze décimales et vaut six par défaut. L’arrondi stabilise l’affichage et les comparaisons sans garantir une précision topographique.
La réponse précise également la référence au nord vrai et l’unité en degrés.
Employez ces relèvements avec prudence
Les azimuts par arête servent à orienter étiquettes et flèches, comparer un cheminement mesuré à des points de contrôle ou repérer des inversions avant publication. Le calcul local et déterministe ne consulte ni géocodage, ni routes, ni relief, ni limites juridiques. Un relèvement décrit une direction angulaire entre coordonnées; il ne prouve pas que le trajet est possible ou autorisé.
Pour le cadastre, l’ingénierie, l’aviation ou une opération critique, utilisez une bibliothèque géodésique ellipsoïdale et un référentiel vérifié. Pour les cartes web, l’enseignement et les contrôles préliminaires, la formule sphérique est claire et portable.
Cas d’usage
Annoter les limites d’un polygone
Orientez les flèches ou étiquetez chaque segment avec son azimut au nord vrai en conservant les indices.
Contrôler la géométrie d’un itinéraire
Calculez chaque relèvement d’une polyligne ouverte pour détecter les inversions ou comparer les notes de terrain.
Préparer un relevé synthétique
Transformez des points de contrôle ordonnés en tableau déterministe avant le traitement géodésique officiel.
Questions fréquentes
Le calculateur ferme-t-il automatiquement le polygone?
Oui. closed vaut true par défaut et relie le dernier sommet au premier. Choisissez false pour une polyligne ouverte.
Que se passe-t-il si le premier sommet est répété à la fin?
Un doublon de fermeture est retiré avant le calcul afin d’éviter un segment de longueur nulle.
Les relèvements utilisent-ils le nord magnétique?
Non. Ils partent du nord vrai. Appliquez séparément la déclinaison locale pour obtenir un cap magnétique.
Puis-je l'utiliser pour un itinéraire ouvert plutôt qu'un polygone ?
Oui. Désactivez l'option qui ferme la figure : aucun côté n'est ajouté entre le dernier point et le premier. Un itinéraire demande alors au moins deux points, contre trois pour un polygone fermé.
Pourquoi un côté est-ouest ne donne-t-il pas exactement 270 degrés ?
Chaque relèvement est la direction du plus court chemin sur la sphère au moment où il quitte le premier point. Cette direction évolue en route, c'est pourquoi le troisième côté de l'exemple part à 270.008726 et non à 270.
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/polygon-edge-bearings \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"vertices":[{"lat":0,"lon":0},{"lat":0,"lon":1},{"lat":1,"lon":1},{"lat":1,"lon":0}]}'const res = await fetch("https://api.kit.forhosting.com/geo/polygon-edge-bearings", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"vertices": [
{
"lat": 0,
"lon": 0
},
{
"lat": 0,
"lon": 1
},
{
"lat": 1,
"lon": 1
},
{
"lat": 1,
"lon": 0
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/polygon-edge-bearings",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"vertices": [
{
"lat": 0,
"lon": 0
},
{
"lat": 0,
"lon": 1
},
{
"lat": 1,
"lon": 1
},
{
"lat": 1,
"lon": 0
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/polygon-edge-bearings", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"vertices":[{"lat":0,"lon":0},{"lat":0,"lon":1},{"lat":1,"lon":1},{"lat":1,"lon":0}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"vertices":[{"lat":0,"lon":0},{"lat":0,"lon":1},{"lat":1,"lon":1},{"lat":1,"lon":0}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/polygon-edge-bearings", 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
{
"vertices": [
{
"lat": 0,
"lon": 0
},
{
"lat": 0,
"lon": 1
},
{
"lat": 1,
"lon": 1
},
{
"lat": 1,
"lon": 0
}
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.polygon_edge_bearings",
"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
Interprétez le relèvement de chaque arête
Chaque arête fournit son indice à partir de zéro, les indices de départ et d’arrivée, les coordonnées et bearing_deg. 0, 90, 180 et 270 désignent le nord, l’est, le sud et l’ouest vrais.
Employez ces relèvements avec prudence
Le navigateur calcule localement; l’API facture $0.002 par requête réussie.
Questions techniques
Pourquoi les sommets consécutifs identiques sont-ils refusés?
Une arête aux extrémités identiques n’a ni longueur ni direction définie; la requête renvoie donc invalid_input.
Combien coûte une requête API?
Une requête API réussie utilise le tarif de base publié de $0.002. Le même calcul fonctionne aussi dans le navigateur.