J'ai deux points dans l'espace, L1 et L2 qui définit deux points sur une ligne.ligne/intersection plan basée sur les points
j'ai trois points dans l'espace, P1, P2 et P3 que 3 points sur un plan.
Donc, étant donné ces entrées, à quel moment la ligne coupent le plan?
Fx. l'équation du plan A * x + B * y + C * z + D = 0 est:
A = p1.Y * (p2.Z - p3.Z) + p2.Y * (p3.Z - p1.Z) + p3.Y * (p1.Z - p2.Z)
B = p1.Z * (p2.X - p3.X) + p2.Z * (p3.X - p1.X) + p3.Z * (p1.X - p2.X)
C = p1.X * (p2.Y - p3.Y) + p2.X * (p3.Y - p1.Y) + p3.X * (p1.Y - p2.Y)
D = -(p1.X * (p2.Y * p3.Z - p3.Y * p2.Z) + p2.X * (p3.Y * p1.Z - p1.Y * p3.Z) + p3.X * (p1.Y * p2.Z - p2.Y * p1.Z))
Mais que le reste?
Le web est déjà jonché d'équations pour cela, mais pas l'équation "finale" réelle dont vous avez besoin pour trouver x, y, z. Ce dont j'avais besoin était l'ensemble final des formules simples pour obtenir x, y, z du résultat. Cette réponse nécessite encore de "résoudre" les équations, donc c'est seulement une très petite partie de la réponse. Je demande une réponse comme: x = [formule basée sur P1.X, P1.Y, P1.Z, P2.X ... etc] et similaire pour y et z. –
@Morten Nielsen: La raison en est que "l'équation finale" est monstrueuse, impossible à comprendre, et est garantie d'être entrée dans votre programme de manière incorrecte. Surtout que je ne sais pas comment vous représentez vos points. Mais je vais éditer mon noeud pour rendre la formule de produit croisée plus explicite pour vous. – btilly