Paramaterizing a circle in 3D

  • Thread starter rod bryant
  • Start date
  • #1

Main Question or Discussion Point

I have a circle defined by the intersection of a sphere and a plane.* I want to convert from cartesian to parametric form on my way to finding the closest point on the circle to some arbitrary other point.* How do I go about this?* Alternatively, how do I find the closest point?
The equation of the sphere is x^2 + y^2 + z^2 = R^2.
The equation of the plane is:* xsub0*x + ysub0*y + zsub0*z = R^2 - r^2/2 where (xsub0,ysub0,zsub0) happens to be another point in space.

I want to find the closest point on the circle to (xsub1,ysub1,zsub1).
 

Answers and Replies

  • #2
655
3
Hmm, I would do it a different way.

1) Find the vector to the center of the circle, [itex]\vec{c}[/itex]
2) Find 2 perpendicular unit length vectors that lie on the plane, [itex]\vec{v}_1,\vec{v}_2[/itex]
3) Find the radius of the circle, r (perhaps different from R if the plane doesn't slice through the exact center of the sphere)
4) Circle is given by [itex]\vec{c}+r cos\left(t\right) \vec{v}_1+r sin\left(t\right) \vec{v}_2[/itex]
 
Last edited:
  • #3
HallsofIvy
Science Advisor
Homework Helper
41,770
911
Hmm, I would do it a different way.

1) Find the vector to the center of the circle, [itex]\vec{c}[/itex]
The vector to the center of the circle from where? And how do you find the center of the circle?

2) Find 2 perpendicular unit length vectors that lie on the plane, [itex]\vec{v}_1,\vec{v}_2[/itex]
3) Find the radius of the circle, r (perhaps different from R if the plane doesn't slice through the exact center of the sphere)
4) Circle is given by [itex]\vec{c}+r cos\left(t\right) \vec{v}_1+r sin\left(t\right) \vec{v}_2[/itex]
Pretty much the same thing: From the equation of the plane and knowing the center of the sphere is at (0,0,0), you can find the equation of the line through (0,0,0) perpendicular to the plane. Determine the point at which that line crosses the plane. That will be the center of the circle (and may be what maze meant in (1) above). Choose any point on the circle and let [itex]\theta[/itex] be the angle a radius of the circle makes with the line through the center of the circle and that point. You can use [itex]\theta[/itex] as parameter and add vectors to get the complete parametric equations.

Now, for the actual problem. To find the closest point on the intersection of a sphere and a circle to [itex](x_0,y_0,z_0)[/itex] I would minimize [itex](x- x_0)^2+ (y- y_0)^3+ (z-z_0)^2[/itex] using Lagrange multipliers with the equations of the sphere and plane as constraints.
 
  • #4
655
3
Here is a diagram:
http://img105.imageshack.us/img105/7691/sphereplaneln3.png [Broken]

Also,
If you know any 3 points on the circle [itex]\vec{p}_1,\vec{p}_2,\vec{p}_3[/itex] (they should be easy to find), then [itex]\vec{c}[/itex] and r may be found as follows:
[tex]\vec{c} = \frac{1}{2}\left(\begin{matrix}\vec{p}_2-\vec{p}_1 \\ \vec{p}_3-\vec{p}_1 \\ \vec{p}_3-\vec{p}_2\end{matrix}\right)^{-1}\left(\begin{matrix}\vec{p}_1\cdot\vec{p}_1-\vec{p}_2\cdot\vec{p}_2 \\ \vec{p}_1\cdot\vec{p}_1-\vec{p}_3\cdot\vec{p}_3 \\ \vec{p}_2\cdot\vec{p}_2-\vec{p}_3\cdot\vec{p}_3 \end{matrix}\right)[/tex]

[tex]r =\left|\vec{c}-\vec{p}_1\right|[/tex]

For derivation of these equations, see this thread: https://www.physicsforums.com/showthread.php?t=173847
 
Last edited by a moderator:
  • #5
655
3
Also, here is the solution for the closest point:
http://img142.imageshack.us/img142/483/closestptyv6.png [Broken]
 
Last edited by a moderator:
  • #6
parameterizing a circle in 3D

Thanks maze and hallsofivy. While waiting for a response I went about the problem another way via an approximation. Now I can compare the exact solution.
 

Related Threads for: Paramaterizing a circle in 3D

  • Last Post
Replies
7
Views
3K
  • Last Post
Replies
3
Views
21K
  • Last Post
Replies
18
Views
84K
  • Last Post
Replies
6
Views
9K
Replies
18
Views
38K
  • Last Post
Replies
6
Views
3K
  • Last Post
Replies
5
Views
1K
Replies
1
Views
6K
Top