Rumbo resultante con corriente
Un barco rara vez avanza sobre el fondo exactamente en la dirección de su proa cuando el agua se mueve.
Ejecutar — gratis
Esta calculadora combina la velocidad del barco respecto al agua con el vector de corriente y devuelve el rumbo y la velocidad reales sobre el fondo. Introduzca la proa, la velocidad propia, la dirección hacia la que fluye la corriente y su velocidad. La herramienta descompone ambos movimientos en componentes este y norte, los suma y convierte el vector combinado en marcación náutica y velocidad. Resulta útil para ejercicios, estimaciones de travesía, formación, simulaciones y cálculos reproducibles mediante API.
Introduzca rumbos y velocidades con una convención coherente
Interprete cada dirección como una marcación de brújula medida en sentido horario desde el norte verdadero: cero grados es norte, noventa es este, ciento ochenta es sur y doscientos setenta es oeste. La proa indica hacia dónde apunta el barco y su velocidad respecto al agua. La dirección de la corriente debe indicar hacia dónde fluye el agua, no de dónde procede. Esta diferencia es importante porque las fuentes marítimas no siempre usan la misma convención. Convierta los datos antes de introducirlos. Use la misma unidad para ambas velocidades, como nudos, kilómetros por hora o metros por segundo. La suma vectorial conserva la unidad, pero mezclar unidades invalida el resultado. Los ángulos fuera del intervalo habitual se normalizan. Las velocidades deben ser finitas y no negativas. Si usa rumbos verdaderos obtendrá un curso verdadero; para datos magnéticos, aplique de forma coherente la variación correspondiente.
Comprenda la suma vectorial del resultado
El cálculo utiliza ejes este y norte. Para una velocidad v con marcación theta, la componente este es v por el seno de theta y la componente norte es v por el coseno de theta. El orden difiere de la fórmula escolar habitual porque los rumbos náuticos parten del norte y aumentan en sentido horario. Se suman por separado las componentes del barco y de la corriente. La longitud del vector combinado, obtenida con el teorema de Pitágoras, es la velocidad sobre el fondo. Su dirección se recupera con una función arco tangente de dos argumentos y se normaliza entre cero y menos de trescientos sesenta grados. La respuesta incluye los tres vectores para que usted pueda revisar signos y operaciones. Los valores se redondean a diez decimales para facilitar automatizaciones estables. Si dos vectores opuestos se anulan, no existe un rumbo físico y la solicitud se rechaza.
Utilice el resultado dentro de los límites del modelo
El curso obtenido es instantáneo y supone dos vectores constantes sobre un plano. Es apropiado para ejercicios de carta, intervalos cortos, simuladores y una primera estimación de travesía. No incluye cambios de marea, abatimiento por viento, error de gobierno, variación magnética, oleaje, aceleración, geometría cartográfica ni obstáculos. En navegación real, divida la ruta en tramos, consulte la corriente prevista para cada lugar y hora y repita el cálculo cuando cambien las condiciones. Esta herramienta resuelve el problema directo: dada una proa, determina el desplazamiento sobre el fondo. Elegir la proa necesaria para seguir una derrota deseada es un problema inverso distinto. Conserve junto al resultado las unidades y la convención empleada. El navegador y la API usan el mismo núcleo determinista; cada cálculo automatizado correcto cuesta $0.002, por lo que resulta adecuado para clases, registros y pruebas de software náutico ligero.
Qué puede hacer con ella
Comprobar un ejercicio de navegación
Verifique un triángulo de velocidades dibujado a mano y compare el rumbo calculado con la solución gráfica.
Estimar una travesía corta
Combine la proa y velocidad previstas con una corriente representativa para obtener una estimación inicial.
Crear datos para simuladores
Genere vectores deterministas para formación marítima, pruebas unitarias o visualizaciones educativas.
Preguntas frecuentes
¿Qué significa la dirección de la corriente?
Es la marcación hacia la que fluye. Invierta el dato si su fuente indica de dónde procede la corriente.
¿Qué unidades de velocidad puedo usar?
Puede usar cualquier unidad si ambas velocidades comparten la misma. El resultado conservará esa unidad.
¿Los rumbos son verdaderos o magnéticos?
El cálculo admite ambos, pero todas las direcciones deben compartir una referencia. Use datos verdaderos para obtener un curso verdadero.
¿Por qué puede no existir rumbo resultante?
Dos vectores iguales y opuestos producen velocidad cero. Un vector nulo no tiene dirección y se rechaza.
¿Cuánto cuesta un cálculo por API?
Cada elemento procesado correctamente cuesta $0.002. La calculadora del navegador emplea el mismo cálculo determinista.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su 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)Ejemplo de solicitud
{
"heading_degrees": 90,
"vessel_speed": 10,
"current_direction_degrees": 180,
"current_speed": 3
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.resultant_course_current",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |