Route résultante avec courant
Un bateau suit rarement exactement son cap sur le fond lorsque l’eau se déplace. Ce calculateur additionne la vitesse du bateau dans l’eau au vecteur du courant, puis fournit la route et la vitesse fond réelles.
Lancer gratuitement
Indiquez le cap, la vitesse surface, la direction vers laquelle porte le courant et sa vitesse. L’outil décompose les deux mouvements en composantes est et nord, les additionne, puis reconvertit le vecteur obtenu en relèvement nautique et en vitesse. Il convient aux exercices de navigation, aux estimations de traversée, à la formation, aux simulations et aux calculs reproductibles par API.
Saisissez des directions et des vitesses cohérentes
Interprétez chaque direction comme un relèvement mesuré dans le sens horaire depuis le nord vrai : zéro degré correspond au nord, quatre-vingt-dix à l’est, cent quatre-vingts au sud et deux cent soixante-dix à l’ouest. Le cap décrit la direction de l’étrave et de la vitesse surface. La direction du courant doit indiquer où l’eau se dirige, et non d’où elle vient. Cette nuance importe, car les sources maritimes n’emploient pas toutes la même convention. Effectuez la conversion avant la saisie. Utilisez la même unité pour les deux vitesses, par exemple le nœud, le kilomètre par heure ou le mètre par seconde. L’addition vectorielle conserve cette unité, mais un mélange rend le résultat incohérent. Les angles hors plage sont normalisés et les vitesses doivent être finies et positives ou nulles. Avec des directions vraies, vous obtenez une route vraie ; des données magnétiques exigent une référence magnétique uniforme ou une correction de déclinaison.
Comprenez l’addition vectorielle du résultat
Le calcul repose sur des axes est et nord. Pour une vitesse v au relèvement theta, la composante est vaut v multiplié par le sinus de theta, et la composante nord v multiplié par son cosinus. Cet ordre diffère de la formule scolaire habituelle, puisque les relèvements nautiques commencent au nord et augmentent dans le sens horaire. Les composantes du bateau et du courant sont additionnées séparément. La norme du vecteur combiné, obtenue par le théorème de Pythagore, donne la vitesse fond. Sa direction est retrouvée par une fonction arc tangente à deux arguments, puis normalisée entre zéro inclus et trois cent soixante degrés exclus. La réponse présente les trois vecteurs afin que vous puissiez contrôler les signes et reproduire le calcul. Les valeurs sont arrondies à dix décimales pour stabiliser les automatisations. Si deux vecteurs opposés s’annulent, aucune route physique n’existe et la requête est refusée.
Employez le résultat dans les limites du modèle
La route calculée est instantanée et suppose deux vecteurs constants dans un plan. Elle convient au travail sur carte, aux courts intervalles, aux simulateurs et à une première estimation de traversée. Elle n’intègre ni variation du courant de marée, ni dérive due au vent, ni erreur de barre, déclinaison magnétique, vagues, accélération, géométrie cartographique ou obstacle. Pour une traversée réelle, découpez la route en segments, obtenez les prévisions de courant adaptées au lieu et à l’heure, puis recommencez lorsque les conditions évoluent. Cet outil résout le problème direct : connaissant le cap surface, il détermine le mouvement sur le fond. Choisir le cap permettant de suivre une route fond voulue constitue un problème inverse distinct. Conservez les unités et la convention avec tout résultat archivé. Le navigateur et l’API partagent le même noyau déterministe ; chaque calcul automatisé réussi coûte $0.002, ce qui convient aux cours, journaux et tests de logiciels nautiques légers.
Cas d’usage
Vérifier un exercice de navigation
Contrôlez un triangle des vitesses tracé à la main et comparez la route calculée à la réponse graphique.
Estimer une courte traversée
Combinez le cap et la vitesse prévus avec un courant représentatif pour une première estimation.
Créer des données de simulation
Produisez des vecteurs déterministes pour la formation maritime, les tests unitaires ou les visualisations pédagogiques.
Questions fréquentes
Que signifie la direction du courant ?
Il s’agit du relèvement vers lequel l’eau se déplace. Inversez la valeur si votre source indique sa provenance.
Quelles unités de vitesse puis-je employer ?
Toute unité convient si les deux vitesses sont exprimées dans la même. Le résultat conserve cette unité.
Les directions sont-elles vraies ou magnétiques ?
Les deux fonctionnent, mais toutes doivent partager une référence. Employez des données vraies pour une route vraie.
Pourquoi une route résultante peut-elle être absente ?
Deux vecteurs égaux et opposés donnent une vitesse nulle. Un vecteur nul n’a pas de direction et est refusé.
Quel est le prix d’un calcul par API ?
Chaque élément traité avec succès coûte $0.002. Le calculateur du navigateur utilise le même calcul déterministe.
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/trig/resultant-course-current \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"heading_degrees":90,"vessel_speed":10,"current_direction_degrees":180,"current_speed":3}'const res = await fetch("https://api.kit.forhosting.com/trig/resultant-course-current", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"heading_degrees": 90,
"vessel_speed": 10,
"current_direction_degrees": 180,
"current_speed": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/trig/resultant-course-current",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"heading_degrees": 90,
"vessel_speed": 10,
"current_direction_degrees": 180,
"current_speed": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/trig/resultant-course-current", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"heading_degrees":90,"vessel_speed":10,"current_direction_degrees":180,"current_speed":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"heading_degrees":90,"vessel_speed":10,"current_direction_degrees":180,"current_speed":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/trig/resultant-course-current", 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
{
"heading_degrees": 90,
"vessel_speed": 10,
"current_direction_degrees": 180,
"current_speed": 3
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.resultant_course_current",
"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. |