# Get tangent vector from point to sphere vector

I have a sphere that has it's center at $A$ and lets say a radius of 1. Then I have a point $C$, some units away from the sphere in an arbitrary direction. I can easily calculate a vector, lets say $\vec{N}^{\,}$, that tells the direction from the point to the sphere. How can I now get a tangent directional vector at the intersection of $\vec{N}^{\,}$ with the sphere, $\vec{R}^{\,}$ that also points in a specific direction.

Let me demonstrate in 2D and then I can explain my difficulty with 3D

What I want is R, I can calculate it in 2D because I can get the intersection point of $\vec{N}^{\,}$ in the circle and calculate the tangent of that point.

But in 3D I cannot do the same because the tangent would be a plane and not a line so there is no way I can calculate $\vec{R}^{\,}$

Is it possible to get such a vector in 3D?

• There is no single vector $\vec{R}$. Any vector that you pick on the tangent plane of the sphere will be orthogonal to the normal line passing through the point. – Mark Fantini Jan 20 '15 at 23:43
• I've had an idea, in the 3D image I did not show the xyz axes but the sphere is centered in the origin. So all axes pass trough the point $A$, I'm not sure yet but I believe I can use the cross product between the vector $\vec{N}^{\,}$ and one of the axes and that will give me the vector $\vec{R}^{\,}$ since my goal is to have one component of $\vec{R}^{\,}$ always 0 in one axis. I will try this later and report back. – victormeriqui Jan 21 '15 at 0:11

I figured it out, since the sphere is centered at the origin, the cross product between $\vec{N}^{\,}$ and $\vec{Z}^{\,}$ will result in $\vec{R}^{\,}$.