image
Physics Forums Logo
image
image
* Register * Upgrade Blogs Library Staff Rules Mark Forums Read
image
image   image
image

Go Back   Physics Forums > Mathematics > General Math


Reply

image Equation of a circle through 3 points in 3D space Share It Thread Tools Search this Thread image
Old Jun13-07, 10:15 AM                  #1
ady_mech

ady_mech is Offline:
Posts: 6
Equation of a circle through 3 points in 3D space

Hello there

I am trying to figure out this but am having some difficulty. Your help would be much appreciated.

I have 3 points in 3D space: (x1,y1,z1), (x2,y2,z2) and (x3,y3,z3). My objective: I need to find out the radius of the circle that passes through these 3 points.

I know how to do this if the points were in 2D space (there are several Google links that explain it). But I don't know how to do it if the points are in 3D space. I don't need the equation of the circle, just the radius of the circle that passes through these three 3D points.

Thanks a lot for taking the time to respond.
  Reply With Quote
Old Jun13-07, 10:39 AM                  #2
matt grime

matt grime is Offline:
Posts: 9,385
Recognitions:
Homework Helper Homework Helper
Science Advisor Science Advisor
you can find the distances between these three points, and the angles between all the lines through pairs of points, thus you can construct a triangle - now you need the radius of the circle that circumscribes such a triangle, which is purel y a problem in the plane that you know how to do.
  Reply With Quote
Old Jun13-07, 02:57 PM                  #3
Dr. Proof

Dr. Proof is Offline:
Posts: 29
Be careful. Not all triangles can be circumscribed by a circle. While there is an infinite number of triangles in 3-D space that can be circumscribed by a circle, not all possible triangles can be circumscribed by a circle. It is possible to have a set of three points that cannot be circumscribed by a circle.
  Reply With Quote
Old Jun13-07, 03:30 PM                  #4
D H

PF Mentor

D H is Online:
Posts: 5,622
Three non-colinear points define a plane. Three non-colinear points on a plane form the vertices of a triangle. All triangles have a circumcircle; this is one of Euclid's propositions. The only constraint is that the points not be colinear.
  Reply With Quote
Old Jun13-07, 03:35 PM                  #5
haiha

haiha is Offline:
Posts: 138
I still think there is only one circle that circumscribes the given triangle no mater in 2D or 3D. A triangle always defines a plane.
  Reply With Quote
Old Jun13-07, 04:02 PM                  #6
Dr. Proof

Dr. Proof is Offline:
Posts: 29
Originally Posted by D H View Post
Three non-colinear points define a plane. Three non-colinear points on a plane form the vertices of a triangle. All triangles have a circumcircle; this is one of Euclid's propositions. The only constraint is that the points not be colinear.
You are absolutely correct D H. All triangles do indeed have a circumcircle. I was absolutely dead wrong to say that there are some triangles that do not have a circumcircle.

I am sorry if my statement generated any confusion for you, ady_mech.

I thinks it's ironic that I tried to help on this forum, and now I am the one doing the learning
  Reply With Quote
Old Jun13-07, 04:12 PM       Last edited by Werg22; Jun13-07 at 04:31 PM..            #7
Werg22

Werg22 is Offline:
Posts: 1,514
Originally Posted by Dr. Proof View Post
Be careful. Not all triangles can be circumscribed by a circle. While there is an infinite number of triangles in 3-D space that can be circumscribed by a circle, not all possible triangles can be circumscribed by a circle. It is possible to have a set of three points that cannot be circumscribed by a circle.
??? I don't think you are correct... Say we chose two points (on the xy plane) and define the line that goes through both and then the median. Any point on the median is equally distanced from the two points. The equation of the median can be put in the form

LaTeX Code: y = mx + b

Say A and B are the points in question. Point C is the other one. For a particular point on the median, the distance squared between that point and LaTeX Code: A = (a_{x}, a_{y})  is

LaTeX Code: (x - a_{x})^{2} + (mx + b - a_{y})^2

And the distance squared between that point and LaTeX Code: C = (c_{x}, c_{y}) is

LaTeX Code: (x - c_{x})^{2} + (mx + b - c_{y})^2

And hence in order to find the center of the circle we solve

LaTeX Code: (x - a_{x})^{2} + (mx + b - a_{y})^2  = (x - c_{x})^{2} + (mx + b - c_{y})^2

which simplifies to

LaTeX Code: {a_{x}}^{2} -2{a_{x}}x + (a_{y} -b)^2 - mx(a_{y} - b) = <BR>{c_{x}}^{2} -2{c_{x}}x + (c_{y} -b)^2 - mx(c_{y} - b)

Which is a first degree equation and hence it is solvable regardless of the vertice of the triangle.
  Reply With Quote
Old Jun13-07, 06:25 PM                  #8
Dr. Proof

Dr. Proof is Offline:
Posts: 29
Originally Posted by Werg22 View Post
??? I don't think you are correct... Say we chose two points (on the xy plane) and define the line that goes through both and then the median. Any point on the median is equally distanced from the two points. The equation of the median can be put in the form
Werg22: You should have read post #6 before you went through all the trouble.
  Reply With Quote
Old Sep7-07, 03:40 AM                  #9
Greek000

Greek000 is Offline:
Posts: 1
Solution to the problem

Originally Posted by matt grime View Post
you can find the distances between these three points, and the angles between all the lines through pairs of points, thus you can construct a triangle - now you need the radius of the circle that circumscribes such a triangle, which is purel y a problem in the plane that you know how to do.
Well, you only need to find the distances between these three points in 3D space, which correspond to the lengths of the triangle sides. This is an easy task. If we name these distances a, b, c then the radius R of the circumscribed circle is:

LaTeX Code:  <BR>R= \\frac {abc}{\\sqrt{2a^2b^2+2b^2c^2+2c^2a^2-a^4-b^4-c^4}}  <BR>

When the points are colinear the quantity inside the square root becomes zero, and therefore the radius becomes infinite as it should.
  Reply With Quote
Old Oct3-07, 08:31 AM       Last edited by Wiggers; Oct3-07 at 09:31 AM..            #10
Wiggers

Wiggers is Offline:
Posts: 1
Now the 3D Center Point

The above thread is helpful, but I'd like to add the question of now finding the coordinates of the circle center. The last replay by "Greek000" gives the solution for finding the Radius. Is there a simple solution for the coordinates?

thanks,
Rob
  Reply With Quote
Old May27-08, 12:36 AM                  #11
scadza

scadza is Offline:
Posts: 2
Finding coordinates of the center

Suppose we have 3 points p1,p2,p3. Make two vectors P1P2 and P2P3 .Using this two we can calculate normal to the plane formed by given 3 points. Say N is the normal.

Now direction of bisector of p1 and p2 is given by cross product of b1 = P1P2 x N. Similarly for p2 and p3 is b2 = P2P3 x N.

Now find equation of two bisector line using the midpoint of p1 and p2 and b1 vector. Similarly find another bisector . Solve them to get the center of circumcircle.
  Reply With Quote
Old May27-08, 12:44 AM                  #12
ice109

ice109 is Offline:
Posts: 1,706
ha i just suggested a solution to another problem that works for this one. you have 3 points

solve the system of 3qns 3unknowns for a general cylinder for a,b,R:
(x-az)^2+(y-bz)^2=R^2
  Reply With Quote
Old May27-08, 01:08 AM                  #13
scadza

scadza is Offline:
Posts: 2
I would be glad if you could explain a little bit more on this problem. i.e. How can u get the coordinates of circumcenter using your method
  Reply With Quote
Old May27-08, 01:10 AM                  #14
ice109

ice109 is Offline:
Posts: 1,706
Originally Posted by scadza View Post
I would be glad if you could explain a little bit more on this problem. i.e. How can u get the coordinates of circumcenter using your method
he didn't ask for the circum center, he asked for the radius
  Reply With Quote
Old May28-08, 04:59 AM                  #15
maze

maze is Offline:
Posts: 654
Let the vectors from the origin to the 3 points you know be LaTeX Code: \\vec{p}_1,\\vec{p}_2,\\vec{p}_3 , and call the vector from the origin to the center point LaTeX Code: \\vec{c} . Our goal is to find LaTeX Code: \\vec{c} .

The vector from point 1 to the center, LaTeX Code: \\vec{p}_1-\\vec{c} , must be the same length as the vector from point 2 to the center, LaTeX Code: \\vec{p}_2-\\vec{c} , which must be the same length as the vector from point 3 to the center, LaTeX Code: \\vec{p}_3-\\vec{c} . In other words, we have the following 3 equations:
LaTeX Code: \\left(\\vec{c}-\\vec{p}_1\\right)\\cdot\\left(\\vec{c}-\\vec{p}_1\\right)=\\left(\\vec{c}-\\vec{p}_2\\right)\\cdot\\left(\\vec{c}-\\vec{p}_2\\right)
LaTeX Code: \\left(\\vec{c}-\\vec{p}_1\\right)\\cdot\\left(\\vec{c}-\\vec{p}_1\\right)=\\left(\\vec{c}-\\vec{p}_3\\right)\\cdot\\left(\\vec{c}-\\vec{p}_3\\right)
LaTeX Code: \\left(\\vec{c}-\\vec{p}_2\\right)\\cdot\\left(\\vec{c}-\\vec{p}_2\\right)=\\left(\\vec{c}-\\vec{p}_3\\right)\\cdot\\left(\\vec{c}-\\vec{p}_3\\right)

Focus on the first one. We can multiply this out and simplify (note the cancellation of LaTeX Code: \\vec{c}\\cdot\\vec{c} ):
LaTeX Code: \\left(\\vec{c}-\\vec{p}_1\\right)\\cdot\\left(\\vec{c}-\\vec{p}_1\\right)=\\left(\\vec{c}-\\vec{p}_2\\right)\\cdot\\left(\\vec{c}-\\vec{p}_2\\right)
LaTeX Code: -2\\vec{c}\\cdot\\vec{p}_1+\\vec{p}_1\\cdot\\vec{p}_1=-2\\vec{c}\\cdot\\vec{p}_2+\\vec{p}_2\\cdot\\vec{p}_2
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_2-\\vec{p}_1\\right)=\\left(\\vec{p}_1\\cdot\\vec{p}_1-\\vec{p}_2\\cdot\\vec{p}_2\\right)/2

The same thing could be done for the other 2 starting equations, in which case we get the following 3 results:
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_2-\\vec{p}_1\\right)=\\left(\\vec{p}_1\\cdot\\vec{p}_1-\\vec{p}_2\\cdot\\vec{p}_2\\right)/2
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_3-\\vec{p}_1\\right)=\\left(\\vec{p}_1\\cdot\\vec{p}_1-\\vec{p}_3\\cdot\\vec{p}_3\\right)/2
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_3-\\vec{p}_2\\right)=\\left(\\vec{p}_2\\cdot\\vec{p}_2-\\vec{p}_3\\cdot\\vec{p}_3\\right)/2

If we recast these 3 equations in matrix form, we get,
LaTeX Code: \\left(\\begin{matrix}\\vec{p}_2-\\vec{p}_1 \\\\ \\vec{p}_3-\\vec{p}_1 \\\\ \\vec{p}_3-\\vec{p}_2\\end{matrix}\\right)\\cdot\\vec{c} = \\frac{1}{2}\\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)

Then multiplying both sides by the matrix inverse, we get the center, LaTeX Code: \\vec{c} .
LaTeX Code: \\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)

You can find the radius by taking the length of the vector from the center to one of the points on the circle,
LaTeX Code: R =\\left|\\vec{c}-\\vec{p}_1\\right|
  Reply With Quote
Old Jul17-08, 03:58 PM                  #16
richardmcc2

richardmcc2 is Offline:
Posts: 1
Re: Equation of a circle through 3 points in 3D space

Originally Posted by maze View Post
Let the vectors from the origin to the 3 points you know be LaTeX Code: \\vec{p}_1,\\vec{p}_2,\\vec{p}_3 , and call the vector from the origin to the center point LaTeX Code: \\vec{c} . Our goal is to find LaTeX Code: \\vec{c} .

The vector from point 1 to the center, LaTeX Code: \\vec{p}_1-\\vec{c} , must be the same length as the vector from point 2 to the center, LaTeX Code: \\vec{p}_2-\\vec{c} , which must be the same length as the vector from point 3 to the center, LaTeX Code: \\vec{p}_3-\\vec{c} . In other words, we have the following 3 equations:
LaTeX Code: \\left(\\vec{c}-\\vec{p}_1\\right)\\cdot\\left(\\vec{c}-\\vec{p}_1\\right)=\\left(\\vec{c}-\\vec{p}_2\\right)\\cdot\\left(\\vec{c}-\\vec{p}_2\\right)
LaTeX Code: \\left(\\vec{c}-\\vec{p}_1\\right)\\cdot\\left(\\vec{c}-\\vec{p}_1\\right)=\\left(\\vec{c}-\\vec{p}_3\\right)\\cdot\\left(\\vec{c}-\\vec{p}_3\\right)
LaTeX Code: \\left(\\vec{c}-\\vec{p}_2\\right)\\cdot\\left(\\vec{c}-\\vec{p}_2\\right)=\\left(\\vec{c}-\\vec{p}_3\\right)\\cdot\\left(\\vec{c}-\\vec{p}_3\\right)

Focus on the first one. We can multiply this out and simplify (note the cancellation of LaTeX Code: \\vec{c}\\cdot\\vec{c} ):
LaTeX Code: \\left(\\vec{c}-\\vec{p}_1\\right)\\cdot\\left(\\vec{c}-\\vec{p}_1\\right)=\\left(\\vec{c}-\\vec{p}_2\\right)\\cdot\\left(\\vec{c}-\\vec{p}_2\\right)
LaTeX Code: -2\\vec{c}\\cdot\\vec{p}_1+\\vec{p}_1\\cdot\\vec{p}_1=-2\\vec{c}\\cdot\\vec{p}_2+\\vec{p}_2\\cdot\\vec{p}_2
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_2-\\vec{p}_1\\right)=\\left(\\vec{p}_1\\cdot\\vec{p}_1-\\vec{p}_2\\cdot\\vec{p}_2\\right)/2

The same thing could be done for the other 2 starting equations, in which case we get the following 3 results:
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_2-\\vec{p}_1\\right)=\\left(\\vec{p}_1\\cdot\\vec{p}_1-\\vec{p}_2\\cdot\\vec{p}_2\\right)/2
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_3-\\vec{p}_1\\right)=\\left(\\vec{p}_1\\cdot\\vec{p}_1-\\vec{p}_3\\cdot\\vec{p}_3\\right)/2
LaTeX Code: \\vec{c}\\cdot\\left(\\vec{p}_3-\\vec{p}_2\\right)=\\left(\\vec{p}_2\\cdot\\vec{p}_2-\\vec{p}_3\\cdot\\vec{p}_3\\right)/2

If we recast these 3 equations in matrix form, we get,
LaTeX Code: \\left(\\begin{matrix}\\vec{p}_2-\\vec{p}_1 \\\\ \\vec{p}_3-\\vec{p}_1 \\\\ \\vec{p}_3-\\vec{p}_2\\end{matrix}\\right)\\cdot\\vec{c} = \\frac{1}{2}\\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)

Then multiplying both sides by the matrix inverse, we get the center, LaTeX Code: \\vec{c} .
LaTeX Code: \\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)

You can find the radius by taking the length of the vector from the center to one of the points on the circle,
LaTeX Code: R =\\left|\\vec{c}-\\vec{p}_1\\right|
I've been working on this problem for the last couple of days and I tried this method, but it didn't work. The 3 equations are not all independent, only two of them are, so when I tried to take the inverse of the 3x3 matrix, I couldn't because the determinant was zero.

I solved the problem today with a different method. The center of the circle defined by 3 points can also be described as the orthocenter of the triangle formed by the three points. Mathworld had a relatively simple equation (http://mathworld.wolfram.com/Barycen...ordinates.html) for the orthocenter in terms of barycentric coordinates, so I was able to find them, and then convert to rectangular coordinates.
  Reply With Quote
image image
Reply
Thread Tools


Similar Threads for: Equation of a circle through 3 points in 3D space
Thread Thread Starter Forum Replies Last Post
how many fixed points on a circle S/Z2? Living_Dog General Math 6 Mar6-08 08:37 AM
n points on a circle ehrenfest Precalculus Mathematics 1 Oct31-07 08:39 AM
Rational points on a circle gonzo General Math 41 Mar31-07 11:31 AM
two points on a circle blimkie Precalculus Mathematics 4 Oct31-05 03:31 PM
Given n points on the unit circle... ModernLogic Calculus & Analysis 7 Jul25-05 03:40 AM

Powered by vBulletin Copyright ©2000 - 2010, Jelsoft Enterprises Ltd. © 2010 Physics Forums
Sciam | physorgPhysorg.com Science News Partner
image
image   image