Calculadora del punto medio de coordenadas polares
Esta calculadora del punto medio de coordenadas polares determina el punto situado exactamente a mitad de camino entre dos posiciones expresadas mediante un radio y un ángulo.
Ejecutar — gratis
Convierte cada punto polar a coordenadas cartesianas, promedia las dos coordenadas horizontales y las dos verticales, y transforma ese promedio de nuevo a forma polar. Usted recibe ambas representaciones para poder revisar o reutilizar el resultado con facilidad. Seleccione grados o radianes una sola vez para todo el cálculo; el ángulo devuelto empleará la misma unidad.
Introduzca dos puntos polares con una sola unidad angular
Describa el primer punto mediante radius_1 y angle_1, y después el segundo mediante radius_2 y angle_2. Ambos radios deben ser iguales o superiores a cero, mientras que los ángulos pueden ser positivos, negativos o mayores que una vuelta completa. Seleccione grados si los ángulos se miden sobre una circunferencia de 360 grados, o radianes si se miden sobre una circunferencia de 2π radianes. La misma selección se aplica a las dos entradas y evita mezclar unidades de forma ambigua. Un radio polar expresa una distancia al origen; por ello, se rechaza un radio negativo en lugar de reinterpretarlo silenciosamente con un cambio de dirección de media vuelta. Los ángulos se aceptan tal como se introducen porque las funciones trigonométricas consideran equivalentes los valores coterminales. Por ejemplo, 30 grados, 390 grados y -330 grados señalan el mismo rayo. Si un punto tiene radio cero, su ángulo no modifica la posición, pero aun así debe ser un número finito para mantener un contrato de entrada predecible.
Comprenda por qué es necesario promediar en forma cartesiana
El punto medio geométrico se obtiene promediando posiciones, no promediando por separado los radios y los ángulos polares. Las coordenadas polares no son lineales: los ángulos vuelven al inicio al completar una vuelta y un cambio de radio altera cuánto contribuye cada dirección a la posición real. La calculadora aplica primero x = r cos θ e y = r sin θ a cada punto. A continuación calcula las coordenadas del punto medio como x = (x₁ + x₂) / 2 e y = (y₁ + y₂) / 2. Solo después de ese promedio lineal recupera el radio mediante la distancia pitagórica al origen y el ángulo mediante la arcotangente de dos argumentos. La diferencia resulta crucial cerca del límite angular. Dos puntos equidistantes situados a 350 grados y 10 grados tienen su punto medio sobre el eje horizontal positivo, no a 180 grados, aunque el promedio aritmético ingenuo de los ángulos escritos indique la dirección contraria. La conversión cartesiana resuelve automáticamente este salto y también trata correctamente radios desiguales.
Interprete y reutilice el resultado normalizado
La respuesta incluye x e y para el punto medio cartesiano, además de radius, angle y angle_unit para su forma polar. El ángulo se normaliza dentro de una vuelta completa no negativa: desde cero hasta menos de 360 en modo de grados, o desde cero hasta menos de 2π en modo de radianes. Así puede comparar resultados incluso cuando los ángulos de entrada utilizan notación negativa o de varias vueltas. Cuando el punto medio coincide con el origen, su radio es cero y no existe una dirección geométrica. Por convención, la calculadora devuelve un ángulo cero para que el JSON siga siendo finito, determinista y práctico para otros sistemas. Los campos numéricos se redondean a doce decimales con el fin de eliminar artefactos insignificantes de coma flotante sin perder precisión útil en trabajos geométricos habituales. Como se devuelven ambas formas, usted puede emplear x e y directamente en un dibujo o cálculo vectorial, o transferir el radio y el ángulo a otra operación polar sin repetir la conversión.
Qué puede hacer con ella
Centrar dos mediciones representadas
Obtenga la posición cartesiana y polar situada a mitad de camino entre dos mediciones radiales de un diagrama.
Comprobar un ejercicio de navegación
Verifique el punto medio cuando dos posiciones planas se expresan como distancias y rumbos desde un mismo origen.
Preparar coordenadas gráficas
Promedie dos puntos de control polares y utilice los valores x e y resultantes en un lienzo, gráfico o proceso geométrico.
Preguntas frecuentes
¿Puedo mezclar grados y radianes en una solicitud?
No. El valor seleccionado en angle_unit se aplica a ambos ángulos de entrada y al ángulo devuelto. Convierta antes una entrada si sus fuentes emplean unidades distintas.
¿Por qué no se promedian directamente los dos radios y ángulos?
Ese procedimiento no suele producir el punto medio geométrico, porque las coordenadas polares no son lineales y los ángulos se reinician al completar una vuelta.
¿Qué ocurre si el punto medio está en el origen?
El resultado tiene radio cero y ángulo cero. El ángulo es una convención determinista, ya que la dirección no está definida en el origen.
¿Se admiten ángulos negativos?
Sí. Se acepta cualquier ángulo de entrada finito y el ángulo de salida se normaliza dentro de una vuelta completa no negativa.
¿Cuánto cuesta un cálculo mediante API?
Cada solicitud cuesta $0.002. El cálculo es determinista y no llama a servicios externos.
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/polar-midpoint \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"radius_1":4,"angle_1":30,"radius_2":6,"angle_2":150}'const res = await fetch("https://api.kit.forhosting.com/trig/polar-midpoint", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"radius_1": 4,
"angle_1": 30,
"radius_2": 6,
"angle_2": 150
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/trig/polar-midpoint",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"radius_1": 4,
"angle_1": 30,
"radius_2": 6,
"angle_2": 150
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/trig/polar-midpoint", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"radius_1":4,"angle_1":30,"radius_2":6,"angle_2":150}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"radius_1":4,"angle_1":30,"radius_2":6,"angle_2":150}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/trig/polar-midpoint", 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
{
"radius_1": 4,
"angle_1": 30,
"radius_2": 6,
"angle_2": 150
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.polar_midpoint",
"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. |