How do I find a circle from a center point and a point defining a normal through the center?

1.4k Views Asked by At

I have a 3d center of a circle ($c$), another point ($p$) that defines a normal vector through the center, and a radius. I'm trying to find the parametric equation of the circle. I found this equation:

$$P = R\cos(\alpha)\vec u + R\sin(\alpha)\vec n \times \vec u + c $$

$\vec n$ is a unit vector perpendicular to the plane so I believe that is the unit vector in the direction $p - c$.

$\vec u$ is a unit vector from the center of the circle to a point on the circumference. I know there is an infinite number of values for $\vec u$ but my problem is that I don't know how to come up with one of them. Or even if this is the most appropriate equation to use in this circumstance.

3

There are 3 best solutions below

3
On BEST ANSWER

For any nonzero vector $(x,y,z)$, at least two of $(0,z,-y)$, $(-z,0,x)$ and $(y,-x,0)$ are also nonzero. (These are the cross products with the standard basis vectors.) Pick one and normalize.

2
On

If you know $\vec n$ and you know $c$ then you know the equation of the plane of the circle. Any unit vector in that plane will do. Think about the plane. You can parameterize the unit circle in the $xy$ plane by $\cos \theta \vec i + \sin \theta \vec j$ but you don't have to use $\vec i, \vec j.$ Any two orthogonal unit vectors will do. You just start out at a different point on the circle when $\theta = 0.$ Same thing in your problem.

6
On

The equation you found is correct.

That is, assuming what you really want is to find the parametrization of a circle on the path of intersection of the sphere's surface, and the plane containing $\vec u$, in relation to the normal vector.

Like saulpatz mentioned before me, all the equation is doing, is parametrizing a circle $\cos\theta \cdot \vec n + \sin\theta \cdot \vec m$ where $\vec n, \vec m$ are orthogonal unit vectors defining a plane in which the circle is laying in.

Edit: I assume you are familiar with the parametrization of a circle of radius $R$ in the $xy$-plane, that is $\vec r(\theta) = [R\cos{\theta}, R\sin{\theta}]$.

This is simply the parametrization $R\cos{\theta} \cdot \vec i + R\sin{\theta} \cdot \vec j$, where $\vec i, \vec j$ are the canonical unit vectors given by $[1, 0, 0]$ and $[0, 1, 0]$ respectively. These two vectors can be thought of as laying in a plane, which in this particular case is just the $xy$-plane.

I am sorry I cannot provide you with any more insight, but try to convince yourself why it is the case that you can generalize this notion of parametrizing a circle $\vec s(\theta) = R\cos\theta \cdot \vec n + R \sin\theta \cdot \vec m$ where $\vec n, \vec m$ are orthogonal unit vectors laying in the plane spanned by $\vec n, \vec m$.