Intersección recta-esfera

En geometría analítica, la intersección entre una recta y una esfera puede resultar en uno de tres casos:

  1. No hay intersección
  2. Hay intersección en un punto
  3. Hay intersección en dos puntos
Los tres posibles casos de intersección entre una recta y una esfera.

En el segundo caso, la recta es tangente a la esfera.

Existen varias circunstancias en las que es necesario distinguir entre estos tres casos y, en los últimos dos, calcular las coordenadas de los puntos de intersección. Por ejemplo, es común realizar este cálculo en el trazado de rayos .[1]

Cálculo en forma vectorial

editar

Si bien este artículo trata sobre la intersección entre una recta y una esfera en tres dimensiones, las ecuaciones que se muestran a continuación son válidas en cualquier número de dimensiones porque están escritas en forma vectorial.

La ecuación de una esfera es:

 
  •   : puntos en la superficie de la esfera
  •   : centro de la esfera
  •   : radio de la esfera

La ecuación de una línea recta es:

 
  •   : puntos de la recta
  •   : un punto de paso de la recta
  •   : distancia entre   y  
  •   : un vector director de la recta

Para encontrar los puntos que están tanto en la recta como en la esfera hay que combinar las dos ecuaciones y despejar  .

Reemplazando la ecuación de la recta dentro de la ecuación de la esfera, y luego cambiando el cuadrado de la norma por un producto escalar, obtenemos:
 
Distribuyendo y reordenando los términos:
 
Se obtiene una ecuación cuadrática donde la incógnita es  :
 
Los coeficientes son:
  •  
  •  
  •  
La solución de esta ecuación es:
 
En el caso específico de que   sea un vector unitario, es decir  , esto se puede simplificar aún más a (escribiendo   en lugar de   para indicar que es un vector unitario):
 
Y llamando   al discriminante:
 
 

El valor del discriminante permite determinar cual de los tres casos se cumple:

  • Si  , entonces está claro en la ecuación anterior que no existen soluciones para  , es decir que la recta no corta a la esfera (caso 1).
  • Si  , entonces existe exactamente una solución, es decir que la línea solo toca la esfera en un punto (caso 2).
  • Si  , existen dos soluciones, y por lo tanto la línea corta a la esfera en dos puntos (caso 3).

Finalmente, en los casos 2 y 3, los puntos de intersección se pueden calcular reemplazando los valores obtenidos de   en la ecuación de la recta.

Véase también

editar

Referencias

editar
  1. Eberly, David H. (2006). 3D game engine design: a practical approach to real-time computer graphics, 2nd edition. Morgan Kaufmann. p. 698. ISBN 0-12-229063-1.