Seções Cônicas: Classificador de Cônicas pela Equação Geral
O classificador de seções cônicas recebe os seis coeficientes da equação geral do segundo grau em duas variáveis, Ax² + Bxy + Cy² + Dx + Ey + F = 0, e informa exatamente qual curva ela descreve: um círculo, uma elipse, uma parábola ou uma hipérbole.
Executar grátis
Junto com o tipo, você obtém o discriminante B² − 4AC, se a cônica está rotacionada (termo cruzado não nulo) e — para as cônicas centrais — as coordenadas do centro. É a etapa de classificação da geometria analítica feita em uma única chamada, com o mesmo código rodando grátis no seu navegador e por meio da API paga.
Uma equação, quatro curvas possíveis
Toda seção cônica — as curvas obtidas ao cortar um cone com um plano — pode ser escrita na mesma forma geral: Ax² + Bxy + Cy² + Dx + Ey + F = 0. Qual das quatro famílias uma equação descreve é decidido inteiramente pela parte quadrática, os coeficientes A, B e C. O teste clássico calcula o discriminante B² − 4AC. Quando ele é negativo, a curva é uma elipse, com o caso especial do círculo quando A é igual a C e não há termo cruzado. Quando é exatamente zero, a curva é uma parábola, o caso-limite em que o plano de corte é paralelo à lateral do cone. Quando é positivo, a curva é uma hipérbole, o caso de dois ramos. O classificador de seções cônicas aplica esse teste para você: você envia os seis coeficientes e recebe a família, o discriminante que a comprova e os parâmetros extras que descrevem a curva.
Como a classificação é calculada
O cálculo é o padrão da geometria analítica, sem aproximações e sem chamadas externas. Primeiro, cada coeficiente é verificado como número finito, e as duas entradas que não podem definir uma cônica são rejeitadas: todos os seis coeficientes iguais a zero, o que não é equação alguma, e uma parte quadrática nula, que é uma reta e não uma cônica. Em seguida, o discriminante B² − 4AC decide a família, como descrito acima. Mais duas informações saem da mesma aritmética. A equação é reportada como rotacionada sempre que o coeficiente cruzado B é não nulo, pois um termo cruzado significa que os eixos da curva estão inclinados em relação aos eixos de coordenadas e seria preciso uma rotação para eliminá-lo. E quando 4AC − B² não é zero — ou seja, para círculos, elipses e hipérboles, as chamadas cônicas centrais — o centro da curva é retornado, encontrado ao resolver as duas equações lineares 2Ax + By = −D e Bx + 2Cy = −E. As parábolas não têm centro, portanto o campo simplesmente é omitido nesses casos.
Onde isso se encaixa no trabalho real
Estudantes usam o classificador para conferir exercícios: calculam o discriminante à mão e depois confirmam a resposta aqui antes de avançar para vértices, focos ou assíntotas. Professores o usam para gerar exercícios com respostas conhecidas, escolhendo coeficientes que caem em cada família. Desenvolvedores o usam em qualquer lugar onde uma equação do segundo grau aparece como dado — computação gráfica, projeto de órbitas e antenas, calibração de câmeras, problemas de otimização — e o software precisa ramificar conforme o que a curva realmente é antes de desenhá-la ou raciocinar sobre ela. O endpoint roda na nossa edge global, não guarda nada do que você envia e custa US$ 0,002 por requisição quando você o automatiza. O código idêntico roda grátis no seu navegador nesta página, então você pode classificar uma equação manualmente, estudar o discriminante e o centro retornados e só pagar quando integrar a mesma verificação em um pipeline que classifica milhares de equações por dia.
Casos de uso
Conferir um exercício de geometria analítica
Confirme que x² + 4xy + y² − 3 = 0 é uma hipérbole e que seu discriminante é positivo antes de resolver suas assíntotas.
Ramificar pelo tipo de curva em código gráfico
Classifique uma equação do segundo grau ajustada antes de escolher a rotina de desenho para uma elipse, parábola ou hipérbole.
Gerar material didático com respostas conhecidas
Escolha coeficientes, classifique-os pela API e monte listas de exercícios em que a família de cada problema é garantidamente correta.
Perguntas frequentes
Quanto custa?
US$ 0,002 por requisição via API. Também é grátis rodar no seu navegador nesta página.
Em que forma a equação deve estar?
Forma geral: Ax² + Bxy + Cy² + Dx + Ey + F = 0. Você envia os seis coeficientes de a até f como números.
Como o tipo da cônica é decidido?
Pelo discriminante B² − 4AC: negativo dá uma elipse (um círculo quando A = C e B = 0), zero dá uma parábola e positivo dá uma hipérbole.
O que significa a marcação de rotacionada?
Ela é verdadeira sempre que o coeficiente cruzado B é não nulo, o que significa que os eixos da curva estão inclinados em relação aos eixos de coordenadas.
Por que uma parábola não tem centro na saída?
Parábolas não são cônicas centrais: o sistema que localiza um centro não tem solução para elas, por isso o campo é omitido.
Que entrada é rejeitada?
Qualquer coeficiente que não seja um número finito, todos os seis coeficientes iguais a zero e uma parte quadrática nula (a, b e c todos zero), que descreve uma reta, não uma cônica.
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/conic-sections \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":1,"b":0,"c":1,"d":0,"e":0,"f":-25}'const res = await fetch("https://api.kit.forhosting.com/math/conic-sections", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 1,
"b": 0,
"c": 1,
"d": 0,
"e": 0,
"f": -25
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/conic-sections",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 1,
"b": 0,
"c": 1,
"d": 0,
"e": 0,
"f": -25
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/conic-sections", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":1,"b":0,"c":1,"d":0,"e":0,"f":-25}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":1,"b":0,"c":1,"d":0,"e":0,"f":-25}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/conic-sections", 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": 1,
"b": 0,
"c": 1,
"d": 0,
"e": 0,
"f": -25
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.conic_sections",
"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. |