Dado un vector normalizado N
¿cómo se puede generar un vector de dirección aleatorio que esté garantizado en el hemisferio con respecto a N
(es decir, el hemisferio donde N
está exactamente en el centro)? La forma en que estoy haciendo esto es muestrear un vector de dirección al azar d
y dot
con N
y mantener ese vector si el dot
el producto es mayor que 0
. Este método no garantiza la generación de un vector en el hemisferio que me interesa, ya que el ~50% de los vectores aleatorios tendrían un 0
o negativo dot
resultado del producto.
He visto en algún sitio que hay una forma de transformar el vector generado aleatoriamente d
para colocarlo en el hemisferio derecho utilizando una matriz de transformación, pero no sé cómo hacerlo. ¿Puede alguien escribir un [pseudo]código de cómo se genera un vector de dirección utilizando el método de transformación?