Forma Padrão da Elipse: Centro, Semieixos e Rotação a partir da Equação
4x² + 9y² − 8x − 18y − 23 = 0 é uma elipse com centro em (1, 1), semieixos 3 e 2 e sem rotação. Digite os seis coeficientes de uma equação geral e receba o centro, os semieixos e a inclinação. 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
- A
- 4
- B
- 0
- C
- 9
- D
- -8
- E
- -18
- F
- -23
- Semieixo maior
- 3
- Semieixo menor
- 2
- Rotação (°)
- 0
Se os coeficientes descreverem uma hipérbole, uma parábola, um único ponto ou nenhuma curva real, a requisição é rejeitada com um erro claro em vez de uma resposta sem sentido. A conversão é álgebra exata: completar quadrados para o centro e uma decomposição em autovalores da forma quadrática para os eixos. O mesmo código roda grátis no seu navegador nesta página.
Da equação geral à forma padrão
Ir de uma à outra exige dois passos. Primeiro, encontre o centro resolvendo o sistema linear 2A·h + B·k = −D e B·h + 2C·k = −E — este é o ponto onde as duas derivadas parciais se anulam, e completar o quadrado em torno dele elimina os termos lineares. Segundo, elimine o termo cruzado B·x·y.
Quando B é zero, a elipse já está alinhada aos eixos e os semieixos saem diretamente da divisão pela constante restante; quando B não é zero, a parte quadrática é uma matriz simétrica 2×2 cujos autovalores fornecem os denominadores ao quadrado e cujos autovetores fornecem o ângulo de rotação.
Como se confere que é mesmo uma elipse
A mesma equação de seis coeficientes pode descrever qualquer cônica, então a validação vem antes da conversão. A quantidade-chave é o discriminante B² − 4AC. Um discriminante negativo é necessário, mas não suficiente: após a translação para o centro, o termo constante precisa ser diferente de zero — caso contrário, a equação vale apenas no próprio centro, uma elipse degenerada em um ponto — e precisa ter o sinal oposto ao da parte quadrática, caso contrário nenhum ponto real satisfaz a equação, a chamada elipse imaginária.
Ambos os casos são rejeitados com uma mensagem que nomeia a falha. Somente quando as três verificações passam a resposta traz o centro, os semieixos maior e menor e a rotação do eixo maior em graus, normalizada para o intervalo semiaberto de 0 a 180, porque a direção de um eixo não tem orientação. Semieixos iguais significam que a elipse é um círculo, o que a resposta indica explicitamente.
Onde é usado e quanto custa
Cônicas na forma geral aparecem onde quer que curvas sejam ajustadas ou intersectadas algebricamente: o ajuste de elipses por mínimos quadrados em visão computacional devolve exatamente estes seis coeficientes, assim como as formas de colisão em motores de física, as áreas de cobertura de antenas em orçamentos de enlace de satélite e as elipses de confiança de uma matriz de covariância em estatística.
Em todos os casos, a forma padrão é o que você realmente precisa depois — para desenhar a curva, testar se um ponto está dentro, calcular a área ou a excentricidade — e fazer a conversão à mão significa refazer com cuidado o cálculo de autovalores toda vez. A chamada roda na nossa edge global, não guarda nada e não contém aleatoriedade nem dependência de relógio, então é seguro usar cache e memoização.
Prototipe de graça e pague apenas quando automatizar — conversão em lote de cônicas ajustadas, validação dentro de um pipeline gráfico ou um app que precisa da forma padrão sob demanda.
Casos de uso
Ler a geometria de uma cônica ajustada
Algoritmos de ajuste de elipses em visão e metrologia devolvem os seis coeficientes gerais; converta-os em centro, eixos e rotação em uma única chamada.
Classificar uma cônica com segurança
Envie qualquer equação quadrática e descubra se é uma elipse real, uma hipérbole, uma parábola ou um caso degenerado — por meio de um erro claro, não de um NaN.
Perguntas frequentes
Quanto custa?
O mesmo cálculo é grátis no seu navegador nesta página.
Qual formato de equação é aceito?
Envie os seis coeficientes nos campos de a até f.
Como o ângulo de rotação é definido?
É o ângulo em graus do eixo maior medido a partir do eixo x positivo, normalizado para [0, 180), porque a direção de um eixo não tem orientação. Para um círculo, o ângulo é arbitrário e a resposta informa isso.
Qual é a precisão do resultado?
A conversão é álgebra em forma fechada — completar o quadrado mais uma decomposição em autovalores 2×2 — exata até o limite do ponto flutuante, com saída arredondada para seis casas decimais para respostas estáveis em bytes.
Algo é armazenado?
Não. Os coeficientes são processados e descartados; apenas o resultado é devolvido.
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/ellipse-standard-form \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":4,"b":0,"c":9,"d":-8,"e":-18,"f":-23}'const res = await fetch("https://api.kit.forhosting.com/math/ellipse-standard-form", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 4,
"b": 0,
"c": 9,
"d": -8,
"e": -18,
"f": -23
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/ellipse-standard-form",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 4,
"b": 0,
"c": 9,
"d": -8,
"e": -18,
"f": -23
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/ellipse-standard-form", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":4,"b":0,"c":9,"d":-8,"e":-18,"f":-23}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":4,"b":0,"c":9,"d":-8,"e":-18,"f":-23}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/ellipse-standard-form", 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
{
"a": 4,
"b": 0,
"c": 9,
"d": -8,
"e": -18,
"f": -23
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.ellipse_standard_form",
"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 forma padrão da elipse recebe os seis coeficientes de uma equação quadrática geral — A·x² mais B·x·y mais C·y² mais D·x mais E·y mais F igual a zero — e devolve a elipse descrita na forma padrão: o centro, os semieixos maior e menor e o ângulo de rotação do eixo maior.
Da equação geral à forma padrão
Toda elipse no plano, por mais rotacionada ou deslocada que esteja, pode ser escrita como A·x² + B·x·y + C·y² + D·x + E·y + F = 0, e todo livro didático de elipses prefere a forma padrão (x−h)²/a² + (y−k)²/b² = 1 porque a geometria fica visível de relance: o centro (h, k) e os semieixos a e b. Este endpoint executa os dois passos com aritmética em forma fechada — sem iteração, sem busca numérica — então o resultado é exato até o arredondamento de ponto flutuante, fixado em seis casas decimais para manter as respostas estáveis em bytes entre máquinas e execuções.
Como o endpoint decide que é realmente uma elipse
Um valor negativo significa que a forma quadrática é definida e a curva pertence à família das elipses; zero é uma parábola, um valor positivo é uma hipérbole, e ambos são rejeitados com um erro invalid_input que informa o discriminante para você ver o motivo.
Onde é usado e quanto custa
Aqui é um único POST com seis números.
Casos de integração
Converter catálogos de cônicas em lote
Percorra conjuntos de coeficientes armazenados de uma simulação ou levantamento e anexe centro e semieixos a cada registro por US$ 0,002 por chamada.
Perguntas técnicas
E se a equação não for uma elipse?
Ela é rejeitada com um erro invalid_input: um discriminante B²−4AC não negativo significa hipérbole ou parábola, e uma elipse degenerada ou imaginária também é recusada, com uma mensagem que indica a causa.