Círculo circunscrito
Encontre a única circunferência que passa por três pontos: para (0, 0), (4, 0) e (0, 3), o círculo circunscrito tem centro em (2; 1,5) e raio de 2,5, a mesma distância até cada ponto. Útil para malhas e arcos. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- X1
- 0
- Y1
- 0
- X2
- 4
- Y2
- 0
- X3
- 0
- Y3
- 3
- Raio
- 2,5
- Diâmetro
- 5
centro e raio por três pontos
O que é um círculo circunscrito e quando você precisa dele
Dados três pontos quaisquer que não estejam sobre uma mesma linha reta, existe exatamente um círculo que passa pelos três. Ele é chamado de círculo circunscrito — ou circuncírculo — e seu centro, o circuncentro, fica à mesma distância de cada um dos três pontos. Essa propriedade de equidistância é o que torna a construção útil muito além da lição de geometria.
Se você triangular um terreno para uma malha 3D, a qualidade de cada triângulo é avaliada pelo seu círculo circunscrito: triângulos alongados produzem círculos enormes e sombreamento ruim, então os algoritmos de malha adicionam ou movem pontos exatamente onde um círculo circunscrito ficou grande demais. Se você construir um diagrama de Voronoi, cada vértice desse diagrama é o circuncentro de um triângulo de sítios de entrada.
E se você simplesmente precisa ajustar um objeto circular — uma lente, um tubo, uma trajetória de curva — por três posições medidas, o círculo circunscrito é a resposta.
Como o centro e o raio são calculados
O cálculo é uma fórmula fechada com determinantes, não uma busca iterativa. O centro do círculo deve estar na mediatriz do segmento que une os dois primeiros pontos e também na mediatriz do segmento que une os dois últimos; a interseção dessas duas retas é o circuncentro. Desenvolvida, essa interseção é uma razão entre dois determinantes construídos a partir das coordenadas ao quadrado dos pontos, e o denominador é o dobro da área com sinal do triângulo formado pelos pontos.
Conhecido o centro, o raio é simplesmente a distância do centro a qualquer um dos três pontos; as três distâncias são iguais por construção, o que funciona ainda como verificação numérica de consistência. Os resultados são arredondados para um número configurável de casas decimais, dez por padrão, de modo que a saída é estável e reproduzível.
Entradas, erros e limites práticos
A entrada é formada por seis números: x1, y1, x2, y2, x3 e y3, um par por ponto. Um campo opcional precision, de 0 a 15, controla as casas decimais de cada campo numérico da resposta. Não há taxa de convergência com que se preocupar nem aleatoriedade: os mesmos seis números sempre produzem o mesmo centro e o mesmo raio.
Casos de uso
Validar a qualidade dos triângulos de uma malha
Calcule o círculo circunscrito de cada triângulo de uma malha de Delaunay e sinalize os elementos cujo raio ultrapassa o seu limite de qualidade.
Ajustar um trajeto circular por três waypoints
Transforme três posições medidas de GPS ou CNC no arco que passa por elas, com o centro para o controlador e o raio para a tabela de avanço.
Perguntas frequentes
Quanto custa?
Também é grátis executar no seu navegador nesta página.
Posso enviar as coordenadas como strings?
Sim. Cada coordenada pode ser um número ou uma string decimal simples como "12.5" ou "-3e2".
Qual é a precisão do resultado?
A fórmula é fechada, então não há erro de convergência; aplica-se apenas o arredondamento de ponto flutuante. O campo precision (0-15, padrão 10) define as casas decimais da resposta.
Os meus dados ficam armazenados?
Não. As coordenadas são processadas em memória e descartadas; apenas o centro e o raio são devolvidos.
Por que um triângulo muito estreito tem um círculo circunscrito tão grande?
Porque os três vértices estão quase em linha reta, então a circunferência que passa por eles precisa ser enorme. Os programas de malha usam isso: um triângulo com círculo exagerado é um elemento ruim, e ali se acrescentam ou movem pontos.
Ferramentas relacionadas
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/math/circumscribed-circle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"x1":0,"y1":0,"x2":4,"y2":0,"x3":0,"y3":3}'const res = await fetch("https://api.kit.forhosting.com/math/circumscribed-circle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"x1": 0,
"y1": 0,
"x2": 4,
"y2": 0,
"x3": 0,
"y3": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/circumscribed-circle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"x1": 0,
"y1": 0,
"x2": 4,
"y2": 0,
"x3": 0,
"y3": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/circumscribed-circle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"x1":0,"y1":0,"x2":4,"y2":0,"x3":0,"y3":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"x1":0,"y1":0,"x2":4,"y2":0,"x3":0,"y3":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/circumscribed-circle", 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
{
"x1": 0,
"y1": 0,
"x2": 4,
"y2": 0,
"x3": 0,
"y3": 3
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.circumscribed_circle",
"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. |
Notas técnicas
A API de círculo circunscrito recebe as coordenadas x e y de três pontos no plano e devolve o único círculo que passa por todos eles: as coordenadas do centro e o raio, além do diâmetro por conveniência. Três pontos que não estão em linha reta determinam exatamente um círculo, e este endpoint o encontra com uma fórmula fechada — sem iteração, sem aproximação, sem tentativa e erro. Quando os três pontos são colineares, não existe círculo finito, e a API informa isso com um erro claro em vez de um número sem sentido. Tudo roda em uma única passada determinística, grátis no navegador nesta página, e custa US$ 0,002 por requisição quando você chama pela API.
O que é um círculo circunscrito e quando você precisa dele
Este endpoint recebe os três pares de coordenadas e devolve centro e raio diretamente, poupando você de deduzir a fórmula sozinho ou depurar a álgebra pela metade de outra pessoa.
Como o centro e o raio são calculados
Esse denominador também é o teste de colinearidade: quando ele é zero, os três pontos estão sobre uma linha reta, as mediatrizes são paralelas e não existe círculo finito — a API rejeita a entrada com um erro explícito em vez de dividir por zero.
Entradas, erros e limites práticos
Aliases comuns como ax, bx, cx ou p1x são aceitos, e os valores podem ser enviados como números ou como strings numéricas simples, o que torna o endpoint tolerante quando quem chama lê as coordenadas de um arquivo de texto. O endpoint recusa três tipos de entrada com um erro invalid_input claro: uma coordenada ausente ou não numérica, dois pontos coincidentes — são necessários três pontos distintos — e três pontos colineares, porque nesse caso o círculo degenera em uma reta no infinito. Tudo roda na nossa edge sem que nada seja armazenado depois, e o mesmo código determinístico alimenta a versão gratuita no navegador nesta página, então o que você testa na mão é exatamente o que a API devolve a US$ 0,002 por requisição.
Casos de integração
Construir vértices de Voronoi a partir de triangulações
Derive cada vértice de Voronoi como o circuncentro de um triângulo de sítios, uma chamada de API por triângulo, com os casos degenerados colineares rejeitados de forma limpa.
Perguntas técnicas
O que acontece se os três pontos estiverem em linha reta?
Nenhum círculo finito passa por três pontos colineares, então a API devolve um erro invalid_input explicando a situação em vez de um número.
Dois dos pontos podem ser iguais?
Não. São necessários três pontos distintos; pontos coincidentes são rejeitados com um erro invalid_input.