[Math] Projection onto a plane that doesn’t pass through the origin

linear algebra

Say I have 3 normalized vectors $a, b, c \in \Bbb R^3 $, That define a plane $\{\ t\ a+s\ b+c\ :\ t, s \in \Bbb R\ \}$.
I would like to project a point $v = (x_0, y_0, z_0)$ onto the plane.
If the plane passed through the origin (if $c$ was $0_{\Bbb R^3}$) that would be simple.
But when $\|a\|=\|b\|=\|c\|=1$, how do you find $v$'s projection onto the plane?

Thanks for any help in advance.

Best Answer

Let $w$ be the vector from the point $c$ to the point $v$, and let $n$ be the normal vector to the plane (so $n = a \times b$.) Let $u$ be the projection of $w$ onto $n$. Then you have a right triangle with $w$ as the hypotenuse and $u$ as one of the legs. The other leg $w-u$ is the vector from $c$ to the point you want. So the answer is the point $c+w-u$.