I understand that to project a vector $v$ onto a subspace, I must find an orthogonal basis for the subspace before projecting $v$ onto each of the orthogonal vectors and add them all up. However, for higher dimension subspaces, I find it rather cumbersome to apply the Gran Schmidt process to find the orthonormal basis.
I was wondering if there is a method to find the projection of $v$ onto a subspace?
For example:
Find the projection of $v_{1} = (-5, 3, 18)$ onto the subspace W spanned by $v_{2} = (-7, 6, 2)$ and $v_{3} = (-1, -2, 1)$
Instead of finding the orthonormal basis using the Gran Schmidt process, I simply found the cross product $v_{4} = v_{2} \times v_{3}$ and subtracted the projection of $v_{1}$ onto $v_{4}$ from $v_{1}$ to get the answer.
Are there similar shortcuts when projecting onto higher dimensions subspaces with more than two basis vectors?