Given a plane with point and normal, rotate the normal so that it lies in the plane.

260 Views Asked by At

I have a plane $P$ described by point $p$ and normal vector $n$. I would like to take the point $p$ and move it along a line lying in the plane $P$. I understand that there are infinitely many such lines, but let's say for example that I want to move $p$ along a line whose $x$ and $y$ directions are 0 and 1, respectively. That is, I want to move $p$ in the direction $(0, 1, z^*)$ where $z^*$ is found so that $p$ is always in the plane $P$.

My failed attempt:

Write the equation of the plane as $$n_0(x - p_0)+n_1(y-p_1)+n_2(z-p_2)=0.$$

Next, assuming I want to move to point $p^*=(p_0,p_1,p_2)+(0,1,z^*),$ substitute into the plane equation as $$n_0(p_0 - p_0)+n_1(p_1 + 1 - p_0) + n_2(p_2 + z^* - p_2)=0$$ $$n_1=n_2z^*$$ $$z^*=-n_1/n_2.$$

Thus if I move $p$ in the direction $(0, 1, -n_1/n_2)$, then I should definitely be moving $p$ in the plane $P$, right?

But it's not working. Any suggestions?

1

There are 1 best solutions below

0
On BEST ANSWER

so, you want to find "all the other points in the plane", right?

Well, a point with two coordinates defined will have a third coordinate that's on the plane. (unless the plane is aligned with two axes, like the x-z plane, in which case, y is always zero; but that's a finite number of cases you can do by hand)

so, pick two numbers, x,y and make the point Q= (x,y,Z), where Z is unknown

your unit normal is N = (a,b,c) is completely known and R := the vector QP (that is, the vector from point Q to the known point P)

N * R = 0 will give you an equation that has one variable (Z)

where * is the dot product

ax + by + c*Z = 0

and you can solve that for Z