Reta de interseção de dois planos
Digite os coeficientes de dois planos e receba a reta em que eles se cortam, como um ponto e uma direção: x+y+z e x−y+z, ambos iguais a 1, se cortam na reta que passa por (0,5; 0; 0,5) com direção (2; 0; −2). 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
- A1
- 1
- B1
- 1
- C1
- 1
- D1
- -1
- A2
- 1
- B2
- -1
- N1
- 1, 1, 1
- N2
- 1, -1, 1
- Direção
- 2, 0, -2
- Dx
- 2
Dois planos distintos no espaço tridimensional ou permanecem paralelos e nunca se encontram, ou se cortam ao longo de uma reta única. Encontrar essa reta de interseção de dois planos é uma tarefa clássica de geometria analítica: a direção é o produto vetorial dos dois vetores normais, e qualquer ponto particular que satisfaça ambas as equações cartesianas trava a forma paramétrica r de t igual ao ponto mais t vezes a direção. Estudantes, scripts de CAD e engenheiros de gráficos encontram os mesmos oito coeficientes repetidas vezes: a1, b1, c1, d1 para o primeiro plano e a2, b2, c2, d2 para o segundo.
O que é a reta de interseção e como as fórmulas a travam
Um plano na forma cartesiana é o conjunto de pontos r igual a (x, y, z) que satisfazem n · r mais d igual a zero, em que n é um vetor normal não nulo. Escreva o primeiro plano como a1 x mais b1 y mais c1 z mais d1 igual a zero e o segundo como a2 x mais b2 y mais c2 z mais d2 igual a zero.
Todo vetor que jaz no primeiro plano é ortogonal a n1 igual a (a1, b1, c1); todo vetor que jaz no segundo é ortogonal a n2 igual a (a2, b2, c2). Portanto qualquer direção que jaz nos dois planos é ortogonal às duas normais, que é exatamente o sentido geométrico do produto vetorial: a direção da reta de interseção é v igual a n1 cruz n2.
Se esse produto vetorial é o vetor nulo, as normais são linearmente dependentes, os planos são paralelos —incluindo o caso coincidente em que são o mesmo plano escrito duas vezes— e não há reta única a devolver. Quando o produto vetorial é não nulo os dois planos se encontram ao longo de uma reta, e a tarefa restante é nomear um ponto particular nela. Este resolvedor escolhe o único ponto da reta mais próximo da origem, que sempre jaz no subespaço gerado por n1 e n2.
Resolver o sistema de Gram dois por dois n1 · r0 igual a menos d1 e n2 · r0 igual a menos d2 para os coeficientes alfa e beta produz r0 igual a alfa n1 mais beta n2. O determinante de Gram equivale ao comprimento ao quadrado de n1 cruz n2 pela identidade de Lagrange, de modo que uma direção não nula garante um ponto mais próximo único. A reta paramétrica é então r de t igual a r0 mais t vezes (n1 cruz n2).
Uma checagem de sala é imediata: os planos x mais y mais z igual a um e x menos y mais z igual a um se encontram ao longo de r de t igual a (um meio, zero, um meio) mais t vezes (dois, zero, menos dois). O plano xy z igual a zero e o plano xz y igual a zero se encontram ao longo do eixo x.
Cada passo é álgebra vetorial elementar sobre oito escalares, então o resultado é determinístico, sem iteração e sem depender do relógio ou de uma semente aleatória.
Onde uma calculadora de interseção de dois planos se paga
Salas de aula e plataformas de tutoria usam uma calculadora de reta de interseção de dois planos para que aprendizes verifiquem a forma paramétrica com coeficientes arbitrários sem erro de sinal no produto vetorial nem um caso omitido quando a maior componente da direção não é z. Geradores de prova precisam de um oráculo determinístico que marque entrada paralela como inválida em vez de devolver em silêncio um sucesso vazio que um corretor defeituoso poderia tratar como acerto.
Scripts de projeto assistido e de modelagem sólida recuperam uma aresta a partir de duas faces adjacentes dadas em forma implícita e então alimentam a reta paramétrica em um passo de recorte ou extrusão. Pipelines de gráficos e de geometria computacional encontram os mesmos oito números quando dois planos de recorte, dois planos espelho ou dois planos de vínculo são conhecidos e a dobradiça compartilhada precisa ser amostrada. Validação falha não consome saldo, o que deixa scripts exploratórios baratos quando você digita coeficientes paralelos ao aprender o contrato.
Mantenha as requisições pequenas, fixe nos testes a direção e o ponto arredondados, e você obtém uma reta reproduzível para lição, plugins LMS, ajudantes CAD e workers de borda sem levantar um sistema de álgebra computacional próprio. Prefira este contrato quando ambas as superfícies já estiverem escritas como planos cartesianos; se você só tem três pontos em cada plano, ajuste primeiro as duas equações implícitas e então chame este resolvedor. Se precisar do ângulo entre os planos em vez da reta comum, essa é outra busca e outra calculadora.
Casos de uso
Lições e provas de geometria analítica
Deixe os estudantes enviarem os oito coeficientes de dois planos cartesianos e conferirem a reta paramétrica —direção n1 cruz n2 e um ponto nos dois planos— contra o método do livro.
Dobradiças de gráficos e de vínculos
Transforme dois planos de recorte, espelho ou vínculo em uma reta paramétrica de dobradiça que shaders, traçadores de raios e resolvedores possam avaliar sem um pacote de álgebra computacional.
Perguntas frequentes
O que acontece se os planos forem paralelos?
Quando n1 × n2 é o vetor nulo os planos são paralelos ou coincidentes, então não determinam uma reta de interseção única e a chamada não é cobrada.
Em que forma estão as equações dos planos?
As ternas (a1,b1,c1) e (a2,b2,c2) são as normais; nenhuma pode ser o vetor nulo.
Qual ponto da reta o resolvedor devolve?
O único ponto da reta de interseção mais próximo da origem. É a combinação linear das duas normais que satisfaz ambas as equações do plano, de modo que a forma paramétrica é canônica e não depende de qual coordenada se anula.
Como se obtém a direção da reta?
É o produto vetorial dos dois vetores normais, formados pelos coeficientes de x, y e z de cada plano. As normais (1; 1; 1) e (1; −1; 1) dão a direção (2; 0; −2), que está contida nos dois planos ao mesmo tempo.
Como confiro o resultado à mão?
Substitua o ponto nas duas equações. No exemplo, o ponto (0,5; 0; 0,5) dá 0,5 + 0 + 0,5 no primeiro plano e 0,5 − 0 + 0,5 no segundo: 1 nos dois casos, exatamente o que as equações pedem.
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/line-of-intersection-of-two-planes \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a1":1,"b1":1,"c1":1,"d1":-1,"a2":1,"b2":-1,"c2":1,"d2":-1}'const res = await fetch("https://api.kit.forhosting.com/math/line-of-intersection-of-two-planes", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a1": 1,
"b1": 1,
"c1": 1,
"d1": -1,
"a2": 1,
"b2": -1,
"c2": 1,
"d2": -1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/line-of-intersection-of-two-planes",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a1": 1,
"b1": 1,
"c1": 1,
"d1": -1,
"a2": 1,
"b2": -1,
"c2": 1,
"d2": -1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/line-of-intersection-of-two-planes", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a1":1,"b1":1,"c1":1,"d1":-1,"a2":1,"b2":-1,"c2":1,"d2":-1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a1":1,"b1":1,"c1":1,"d1":-1,"a2":1,"b2":-1,"c2":1,"d2":-1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/line-of-intersection-of-two-planes", 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
{
"a1": 1,
"b1": 1,
"c1": 1,
"d1": -1,
"a2": 1,
"b2": -1,
"c2": 1,
"d2": -1
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.line_of_intersection_of_two_planes",
"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.
Limites
max_abs | 1000000000000 |
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
Esta calculadora aceita esses coeficientes, rejeita uma normal nula ou um par paralelo com invalid_input e devolve o vetor diretor junto com o único ponto da reta mais próximo da origem.
Contrato de entrada, forma da resposta e comportamento de erro
Se a1, b1 e c1 são todos zero, o plano um não é um plano e a tarefa é rejeitada; a mesma regra vale para o plano dois. Se o produto vetorial das normais é numericamente nulo os planos são paralelos, inclusive coincidentes, e o motor falha com uma mensagem de que não determinam uma reta de interseção única —essas falhas não são cobradas—. O ponto particular volta tanto como o array point quanto como os escalares x0, y0, z0. Envie um corpo JSON com oito números finitos obrigatórios: a1, b1, c1, d1 para o primeiro plano a1 x mais b1 y mais c1 z mais d1 igual a zero, e a2, b2, c2, d2 para o segundo plano escrito do mesmo modo. Cada coeficiente pode chegar como número JSON ou como string numérica; aceitam-se os apelidos n1x, n1y, n1z, plane1_d e os nomes correspondentes do plano dois. Campos ausentes, strings vazias, valores não finitos e magnitudes acima do teto publicado de um trilhão falham com invalid_input nomeando o campo. Em caso de sucesso o corpo ecoa os oito coeficientes, reafirma as duas normais como arrays n1 e n2 e devolve direction como o produto vetorial cru junto com as componentes escalares dx, dy, dz e direction_magnitude. As strings de exibição incluem plane1 e plane2, as três equações de componente paramétrica parametric_x, parametric_y e parametric_z, a forma vetorial parametric_vector, uma string de forma simétrica e um campo formula que documenta as formas fechadas. Emparelhe a resposta com seu próprio código de plotagem se precisar de um esboço; esta API resolve só a reta e não emite malhas nem prosa passo a passo além do campo formula. O preço é um US$ 0,002 fixo por requisição bem-sucedida com unidade item.
Onde uma calculadora de interseção de dois planos se paga
Como a implementação é parse pura de nível A, cada chamada bem-sucedida custa o US$ 0,002 publicado de base, sem tokens de modelo e sem rede de saída.
Casos de integração
Arestas CAD a partir de duas faces implícitas
Recupere a aresta compartilhada de duas faces planas adjacentes dadas na forma a1x+b1y+c1z+d1=0 e amostre r(t) para recorte, cotagem ou extrusão.
Perguntas técnicas
Como encontro a reta de interseção de dois planos?
Envie os oito coeficientes finitos de a1x+b1y+c1z+d1=0 e a2x+b2y+c2z+d2=0. A API devolve direction = n1 × n2 e o único ponto da reta mais próximo da origem, mais as strings paramétrica e simétrica.
Quanto custa a calculadora de reta de interseção de dois planos?
A ferramenta do navegador é gratuita. Requisições API usam saldo pré-pago a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.