Calculadora do ângulo de refração
Ao passar de índice 1 para um vidro de 1,5 com 30°, um raio se refrata a 19,4712206345° e desvia 10,5287793655°. Digite a incidência, em graus ou radianos, e os dois índices; você também vê o ângulo crítico quando ele existe. 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
- Ângulo de incidência
- 30
- N1
- 1
- N2
- 1,5
- Unidade de ângulo
- deg degrees
- Ângulo de incidência (°)
- 30
- Ângulo de refração (°)
- 19,4712206345
- Ângulo de refração (rad)
- 0,3398369095
A calculadora do ângulo de refração aplica a lei de Snell a qualquer par de meios transparentes. Você fornece o ângulo de incidência — em graus ou radianos, medido a partir da normal à superfície — junto com o índice de refração do meio que o raio deixa e do meio em que ele entra, e recebe de volta o ângulo de refração em graus, o desvio que o raio sofre na fronteira e o ângulo crítico sempre que ele existir. Quando o ângulo de incidência excede o ângulo crítico, a chamada avisa em vez de devolver um número sem sentido.
O que é o ângulo de refração
Quando um raio de luz atravessa a fronteira entre dois meios transparentes — ar e água, água e vidro, vidro e ar — sua velocidade muda e, como a velocidade muda, sua direção também muda. A nova direção, medida a partir da linha perpendicular à superfície no ponto de entrada, é o ângulo de refração.
Ele não é arbitrário: a lei de Snell o fixa com exatidão pela relação n₁·sin(θ₁) = n₂·sin(θ₂), em que n₁ e n₂ são os índices de refração dos dois meios e θ₁ é o ângulo de incidência. Um raio que entra em um meio mais denso (n₂ maior que n₁) aproxima-se da normal e o ângulo de refração sai menor que o de incidência; um raio que entra em um meio menos denso afasta-se da normal e o ângulo de refração é maior.
Na incidência normal, com θ₁ igual a zero, o raio atravessa em linha reta sem desviar, quaisquer que sejam os índices. O resultado é determinístico — os mesmos três números produzem sempre a mesma resposta —, portanto é seguro usá-lo em motores de física, código de renderização e ferramentas de correção.
O ângulo crítico e a reflexão interna total
A lei de Snell tem um limite geométrico. Quando a luz viaja de um meio mais denso para um menos denso (n₁ maior que n₂), o ângulo de refração é sempre maior que o de incidência, e existe um ângulo de incidência específico em que o raio refratado teria de viajar exatamente ao longo da superfície: o ângulo crítico, arcsin(n₂/n₁). Além dele, sin(θ₂) teria de superar um, o que é impossível, de modo que não existe raio refratado e toda a luz é refletida de volta — reflexão interna total.
É o princípio por trás das fibras ópticas, do brilho do diamante e da superfície da água com aspecto de espelho vista por um mergulhador. Muitas calculadoras devolvem NaN em silêncio nesse regime, ou truncam o resultado e entregam um número errado mas verossímil. Quando n₁ é maior que n₂, a resposta também inclui o ângulo crítico em graus, para que você verifique quão perto do limite está uma determinada configuração sem uma segunda chamada.
Entradas, saídas e uso prático
A resposta devolve os dois índices como recebidos, o ângulo de incidência normalizado para graus, o ângulo de refração em graus e em radianos, e o desvio — quantos graus a fronteira realmente desviou o raio —, que muitas vezes é o número que um projetista de lentes ou desenvolvedor de jogos quer em seguida.
Os usos típicos incluem verificar soluções de lição de casa, pré-calcular tabelas de consulta para equipamentos de fotografia subaquática, alimentar o componente refrativo de um ray tracer e dimensionar enlaces de fibra óptica em que ficar abaixo do ângulo crítico é toda a restrição de projeto.
Casos de uso
Conferir um exercício de física
Verifique a resposta de uma lição sobre a lei de Snell: envie o ângulo de incidência e os dois índices e compare o ângulo de refração devolvido com a solução desenvolvida.
Alimentar um ray tracer
Forneça a direção de refração de uma superfície de vidro ou água em um renderizador e conte com o erro de ângulo crítico para mudar para reflexão interna total.
Projetar um enlace de fibra óptica
Confirme que uma configuração de lançamento permanece abaixo do ângulo crítico na fronteira núcleo-casca lendo o ângulo crítico informado na mesma resposta.
Perguntas frequentes
Quanto custa?
Também é gratuito executar no seu navegador nesta página, com o mesmo resultado determinístico.
Em que unidade o ângulo de refração é devolvido?
Sempre em graus, com uma cópia em radianos.
Quais índices de refração devo usar?
Quaisquer números positivos. O vácuo é exatamente 1, o ar cerca de 1.0003, a água cerca de 1.333, o vidro crown cerca de 1.52 e o diamante cerca de 2.417.
Os resultados são determinísticos?
Sim. É uma avaliação em forma fechada da lei de Snell, sem aleatoriedade, sem rede e sem relógio, arredondada a 12 dígitos significativos para uma saída estável byte a byte.
O que é o ângulo de desvio?
É o quanto o raio muda de direção na fronteira, a diferença entre o ângulo de incidência e o de refração. Um raio a 30° que passa de índice 1 para um vidro de 1,5 desvia 10,5287793655°.
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/phys/angle-of-refraction \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"incidence_angle":30,"n1":1,"n2":1.5}'const res = await fetch("https://api.kit.forhosting.com/phys/angle-of-refraction", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"incidence_angle": 30,
"n1": 1,
"n2": 1.5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/angle-of-refraction",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"incidence_angle": 30,
"n1": 1,
"n2": 1.5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/angle-of-refraction", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"incidence_angle":30,"n1":1,"n2":1.5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"incidence_angle":30,"n1":1,"n2":1.5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/angle-of-refraction", 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
{
"incidence_angle": 30,
"n1": 1,
"n2": 1.5
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.angle_of_refraction",
"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
O que é o ângulo de refração
Este endpoint resolve essa equação diretamente: você envia o ângulo de incidência e os dois índices e recebe θ₂ em graus, com uma cópia em radianes para quem trabalha nativamente em radianes.
O ângulo crítico e a reflexão interna total
Este endpoint o trata como um erro explícito: a mensagem informa o ângulo de incidência, os dois índices e o seno calculado, para que um chamador automatizado possa detectar a condição e mudar para um caminho de reflexão em vez de consumir lixo.
Entradas, saídas e uso prático
A chamada recebe três campos obrigatórios e um opcional. incidence_angle é o ângulo a partir da normal à superfície; por padrão é lido em graus e deve estar entre 0 e 90, e definir angle_unit como rad o muda para radianos com intervalo de 0 a π/2. n1 e n2 são os índices de refração dos meios incidente e refratado — o vácuo é exatamente 1, o ar cerca de 1.0003, a água cerca de 1.333, o vidro crown comum cerca de 1.52 e o diamante cerca de 2.417. Custa US$ 0,002 por requisição pela API e roda de graça no navegador nesta página, com resultados idênticos nos dois casos.
Perguntas técnicas
O que acontece além do ângulo crítico?
A chamada devolve um erro invalid_input explicando que não existe ângulo de refração, com os índices e o seno calculado, em vez de devolver NaN ou um número truncado.
Ele informa o ângulo crítico?
Sim. Sempre que n1 for maior que n2, a resposta inclui critical_angle_deg = arcsin(n2/n1) para que você veja o limiar de reflexão interna total.