Encontrar la intersección de 2 rectas en el espacio
Publicado por Antonio (1 intervención) el 08/06/2018 09:22:54
Buenas, estoy programando un código en el cual tengo 4 vectores de 3 coordenadas cada uno y otro vector de 4 coordenadas que representa los coeficientes de un plano (Ax + By + Cz + D = 0), dos de los vectores representan 2 puntos en el espacio y los otros dos representan 2 vectores directores. Los puntos han sido proyectados sobre el plano, por tanto aunque sigan teniendo 3 coordenadas, están en un plano y por tanto las dos rectas que representan se deben cortar en otro punto del plano, como puedo calcular ese punto? De forma manual se hace resolviendo un sistema de ecuaciones, pero he realizado un código y el punto me lo marca en un lugar lejano donde se que no se cortan:
donde a1 y a2 son los puntos del espacio y b1 y b2 son los vectores directores, todos ya están proyectados sobre el plano.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim matriz(2, 2) As Double
matriz(0, 0) = a2(1)
matriz(0, 1) = -a2(0)
matriz(0, 2) = 0
matriz(1, 0) = a2(2)
matriz(1, 1) = 0
matriz(1, 2) = -a2(0)
matriz(2, 0) = b2(1)
matriz(2, 1) = -b2(0)
matriz(2, 2) = 0
Dim b(2) As Double
b(0) = -(a2(0) * a1(1) - a2(1) * a1(0))
b(1) = -(a2(0) * a1(2) - a2(2) * a1(0))
b(2) = -(b2(0) * b1(1) - b2(1) * b1(0))
Return ResolverSistema(matriz, b)
donde a1 y a2 son los puntos del espacio y b1 y b2 son los vectores directores, todos ya están proyectados sobre el plano.
Valora esta pregunta
0