Rotating vectors in planes Suppose I have a free vector $ \vec{w}$ and I have a plane $ P$ described the following way:
$$ \vec{r} = \vec{r_o} + a \vec{u} + b \vec{v}$$
Where $a,b$ are parameters to vary and $ \vec{u}$ and $ \vec{v}$ are vectors in the plane and $ \vec{r_o}$ is position vector to some vector in the plane
Suppose I wish to rotate the component of $ \vec{w}$ in the plane $P$ along an axis parallel to the normal of $P$, how would I write out the rotated new vector $ \vec{w'}$ which has the same component as $ w$ perpendicular to plane and the parallel part to plane as rotated?
I know to start I'd have to split up $ \vec{w}$ into components perpendicular and parallel to plane as follows;
$$ \vec{w} = \vec{w}_{\parallel} + \vec{w}_{\perp}$$
Not sure what I do after this
Visual depiction:

Legend:
Black=original vector
Orange= vector part parallel to plane
Green= vector part parallel to plane which is rotated
Red= the new vector with the same perpendicular component by parallel part along plane rotated

Given $\vec w_\parallel$ and $\vec w_\perp,$ let
$$\hat n = \frac{1}{\|\vec{w}_\perp\|} \vec{w}_\perp. $$
Then $\hat n$ is a unit normal vector to the plane.
Further, let
$$ \vec w_= = \hat n \times \vec w_\parallel.$$
(The subscript $=$ here has no particular significance except that it looks somewhat like $\parallel$ rotated ninety degrees.)
Then since $\hat n$ and $\vec w_\parallel$ are orthogonal,
$\vec w_=$ is a vector in the plane $P$ orthogonal to $\vec w_\parallel$.
Further, since $\hat n$ is a unit vector, $\vec w_=$ has the same magnitude as $\vec w_\parallel$.
Now to rotate $\vec w$ by angle $\theta$ around an axis perpendicular to $P,$ let
$$ \vec w' = \vec w_\perp + (\cos \theta)\vec w_\parallel + (\sin\theta)\vec w_=.$$
