5
$\begingroup$

I have a vector with position $O=(o_1,o_2,o_3)$ and direction $D=(d_1,d_2,d_3)$ and a plane determined by 3 points $A=(a_1,a_2,a_3),B=(b_1,b_2,b_3),C=(c_1,c_2,c_3)$.

In which point will the vector intersect the plane?

$\endgroup$
14
$\begingroup$

An outline of one method to find the point of intersection:

First find the equations of the line and the plane

A parameterization of the line is $$\tag{1} (x,y,z)= (o_1+d_1 t\, , o_2+d_2 t\,, o_3+d_3 t ),\quad -\infty<t<\infty. $$

To find an equation of the plane, take the cross product of the vectors $A-B$ and $B-C$. This will give you a normal vector to the plane: $(N_1, N_2, N_3)$. The equation of the plane is then, using $A$ as a point on the plane: $$\tag{2} N_1(x-a_1)+N_2(y-a_2)+N_3(z-a_3)=0. $$

Now, to find the point of intersection, substitute the information from $(1)$ $$ x=o_1+d_1 t , \quad y= o_2+d_2 t\quad z= o_3+d_3 t $$ into $(2)$ and solve for $t$. Then substitute this value of $t$ into $(1)$ to find the coordinates of the point.

I'm assuming there is a point of intersection. There may not be, or there may be infinitely many...

| cite | improve this answer | |
$\endgroup$
  • 1
    $\begingroup$ worked like a charm! thanks a lot! $\endgroup$ – Alex Jan 19 '12 at 15:18
  • 1
    $\begingroup$ I found it very helpful too. +1 $\endgroup$ – cangrejo Jan 30 '14 at 16:23
1
$\begingroup$

An alternative method is to describe the line and plane as follows:

The plane can be described as a vector $\vec{x}$ which is the sum of two vectors on the plane $\vec{q_1} = \vec{A} - \vec{B}$, and $\vec{q_2} = \vec{A}-\vec{C}$ scaled by arbitrary parameters $\lambda$ and $\mu$.

$$\vec{x} = \vec{A} + \lambda \vec{q_1} + \mu \vec{q_2}$$

The line can also be described as the vector $\vec{y}$ using another paramater $t$.

$$\vec{y} = \vec{O} + \vec{D} t$$

To find out where the line intersects the plane, solve for $\vec{x} = \vec{y}$. This gives us three equations in which we can find the three parameters. In matrix form this looks like:

$$\begin{bmatrix} q_{1,x} & q_{2,x} & -d_1\\ q_{1,y} & q_{2,y} & -d_2\\ q_{1,z} & q_{2,z} & -d_3 \end{bmatrix} \begin{pmatrix} \lambda\\ \mu\\ t \end{pmatrix} = \begin{pmatrix} o_1 - a_1\\ o_2 - a_2\\ o_3 - a_3 \end{pmatrix} $$

Invert the matrix to find the parameters $\lambda$, $\mu$, and $t$. Once you know $t$ you can plug it into the equation for $\vec{y}$ and that will be your point of intersection.

| cite | improve this answer | |
$\endgroup$
0
$\begingroup$

A point on your plane is $A$, and two direction vectors that lie in your plane are $B-A$ and $C-A$, so any point on the plane can be written as $A + \lambda(B-A) + \mu(C-A)$, where $\lambda, \mu$ are some real numbers. This can be rewritten as $(1-\lambda-\mu)A + \lambda B + \mu C$, or equivalently $\alpha A + \beta B + \gamma C$ where $\alpha + \beta + \gamma = 1$.

So you need to find $k$ such that $kD$ can be written in the form $\alpha A + \beta B + \gamma C$ where $\alpha + \beta + \gamma = 1$. Then $kD$ is the point of intersection.

| cite | improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.