Calculadora do ponto médio de coordenadas polares
Esta calculadora de ponto médio em coordenadas polares encontra a posição exatamente entre dois pontos expressos por raio e ângulo.
Executar grátis
Ela converte cada ponto polar em coordenadas cartesianas, calcula a média das duas coordenadas horizontais e das duas verticais e transforma essa média novamente para a forma polar. Você recebe as duas representações, o que facilita conferir ou reutilizar o resultado. Escolha graus ou radianos uma única vez para todo o cálculo; o ângulo retornado usa a mesma unidade.
Informe dois pontos polares na mesma unidade angular
Descreva o primeiro ponto com radius_1 e angle_1 e, em seguida, o segundo com radius_2 e angle_2. Os dois raios devem ser iguais ou maiores que zero, enquanto os ângulos podem ser positivos, negativos ou superiores a uma volta completa. Selecione graus quando os ângulos forem medidos em um círculo de 360 graus, ou radianos quando forem medidos em um círculo de 2π radianos. A mesma seleção vale para as duas entradas e evita uma mistura ambígua de unidades. Um raio polar representa a distância até a origem; por isso, um raio negativo é rejeitado em vez de ser reinterpretado silenciosamente com uma mudança de direção de meia volta. Os ângulos são aceitos como informados, pois as funções trigonométricas tratam valores coterminais como a mesma direção. Por exemplo, 30 graus, 390 graus e -330 graus identificam o mesmo raio geométrico. Se um ponto tiver raio zero, o ângulo informado não altera sua posição, mas ainda precisa ser um número finito para que o contrato de entrada permaneça previsível.
Entenda por que a média cartesiana é necessária
O ponto médio geométrico é obtido pela média das posições, e não pela média independente dos raios e ângulos polares. As coordenadas polares não são lineares: os ângulos reiniciam ao final de uma volta, e a alteração de um raio muda a contribuição de uma direção para a posição real. A calculadora aplica primeiro x = r cos θ e y = r sin θ a cada ponto. Depois, calcula as coordenadas do ponto médio como x = (x₁ + x₂) / 2 e y = (y₁ + y₂) / 2. Somente após essa média linear ela recupera o raio do ponto médio pela distância pitagórica até a origem e o ângulo pela função arco tangente de dois argumentos. Essa diferença é importante perto do limite angular. Dois pontos igualmente distantes a 350 graus e 10 graus têm o ponto médio no eixo horizontal positivo, e não em 180 graus, embora a média aritmética ingênua dos ângulos escritos sugira a direção oposta. A conversão cartesiana resolve automaticamente essa passagem e também trata corretamente raios diferentes.
Interprete e reutilize o resultado normalizado
A resposta inclui x e y para o ponto médio cartesiano, além de radius, angle e angle_unit para a forma polar. O ângulo é normalizado em uma volta completa não negativa: de zero até menos de 360 no modo de graus, ou de zero até menos de 2π no modo de radianos. Isso facilita comparar resultados mesmo quando os ângulos de entrada usam notação negativa ou de várias voltas. Quando o ponto médio coincide com a origem, seu raio é zero e não existe uma direção geométrica. Por convenção, a calculadora retorna ângulo zero para que o JSON permaneça finito, determinístico e conveniente para sistemas posteriores. Os campos numéricos são arredondados para doze casas decimais, eliminando artefatos insignificantes de ponto flutuante sem perder precisão útil em tarefas geométricas comuns. Como as duas formas de coordenadas são retornadas, você pode usar x e y diretamente em um desenho ou cálculo vetorial, ou enviar o raio e o ângulo para outra operação polar sem repetir a conversão.
Casos de uso
Centralizar duas medições representadas
Encontre a posição cartesiana e polar entre duas medições radiais exibidas em um diagrama.
Conferir um exercício de navegação
Verifique o cálculo do ponto médio quando duas posições planas são dadas como distâncias e rumos a partir da mesma origem.
Preparar coordenadas gráficas
Calcule a média de dois pontos de controle polares e use os valores x e y em uma tela, gráfico ou fluxo geométrico.
Perguntas frequentes
Posso misturar graus e radianos na mesma solicitação?
Não. O angle_unit selecionado vale para os dois ângulos de entrada e para o ângulo retornado. Converta uma entrada antes se as fontes usarem unidades diferentes.
Por que não calcular diretamente a média dos raios e ângulos?
Em geral, isso não produz o ponto médio geométrico, pois as coordenadas polares não são lineares e os ângulos reiniciam após uma volta completa.
O que acontece se o ponto médio estiver na origem?
O resultado tem raio zero e ângulo zero. O ângulo é uma convenção determinística porque a direção não é definida na origem.
Ângulos negativos são aceitos?
Sim. Qualquer ângulo de entrada finito é aceito, e o ângulo de saída é normalizado em uma volta completa não negativa.
Quanto custa um cálculo via API?
Cada solicitação custa US$ 0,002. O cálculo é determinístico e não chama serviços externos.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
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)Exemplo de requisição
{
"radius_1": 4,
"angle_1": 30,
"radius_2": 6,
"angle_2": 150
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.polar_midpoint",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |