|


Equation of a SphereDate: 09/17/97 at 09:20:03 From: Matt Ream Subject: Equation of a sphere given 3 points I am helping write a geometry computer program and we are stuck. We are trying to find an equation or group of equations simplified that would solve for the center point and radius of a sphere given three points in 3D space. We have already tried using the equation of a sphere and substituting to isolate one variable, but the algebra is far too complex and tedious. How would you use the equation of a plane to solve the problem? Thank you, Matt
Date: 09/17/97 at 11:16:11
From: Doctor Rob
Subject: Re: Equation of a sphere given 3 points
Three points are not enough to determine a sphere, even if they are
not colinear (lying on the same line). You need four points, not
coplanar (lying in the same plane) to uniquely determine a sphere.
Nevertheless, three noncolinear points do determine a family of
spheres. The points determine a plane, and within that plane, they
determine a circle whose center and radius can be determined, but
which are really unnecessary to the calculation. The line
perpendicular to that plane at the center of the circle contains the
centers of this family of spheres. For each point on the line, there
is a sphere whose center is there, and which intersects the plane in
the circle. Its radius is the distance from that center to each of
the three original points.
Let the three points be P, Q, and R, whose x-, y- and z-coordinates
are given. The equation of a plane can be written in the form
A*x + B*y + C*z = D, with A^2 + B^2 + C^2 = 1. You can substitute
the coordinates of P, Q, and R into that equation to get three linear
equations in the coefficients A, B, C, and D, which, together with
the quadratic equation above, determine A, B, C, and D (up to sign,
which is irrelevant).
Next you can find the equations of the lines PQ, PR, and QR, and find
the perpendicular bisectors of those line segments. Their intersection
is the line of centers of the sphere family. The line connecting
P(xP,yP,zP) to Q(xQ,yQ,zQ) is given by:
(x-xP)/(xQ-xP) = (y-yP)/(yQ-yP) = (z-zP)/(zQ-zP),
provided none of the denominators is zero. (If one of the denominators
is zero, say xQ = xP, drop that part of the equation and replace it by
the numerator set equal to zero, i.e. x - xP = 0. If two of the
denominators are zero, drop all of the above and replace it with the
two numerators set equal to zero.) In parametric form, with parameter
t, in all cases, the line can take the form
x = t*(xQ-xP) + xP,
y = t*(yQ-yP) + yP,
z = t*(zQ-zP) + zP.
The parameter value t = 0 corrsponds to P, and the parameter value
t = 1 corresponds to Q.
The midpoint of PQ is ([xP+xQ]/2,[yP+yQ]/2,[zP+zQ]/2), correponding to
parameter value t = 1/2. The equation of the perpendicular bisecting
plane of PQ is then
(xQ-xP)*(x-[xP+xQ]/2) + (yQ-yP)*(y-[yP+yQ]/2)
+ (zQ-zP)*(z-[zP+zQ]/2) = 0.
Create the equations of the perpendicular bisecting planes of PR
and QR in an analogous fashion. Then solve the three equations
simultaneously for x, y, and z. Actually this system of equations
is redundant, since the three planes must share a common line, so
any two of them will suffice.
The result of this solving will be the equation of a line, which can
be put into the parametric form
x = A*t + a,
y = B*t + b,
z = C*t + c.
If all of A, B, and C are nonzero, this can be written as
(x-a)/A = (y-b)/B = (z-c)/C = t, and if not, a related form results.
This is the line which consists of the centers of the family of
spheres.
Then the equation of the sphere corresponding to parameter value t is
(x - [A*t+a])^2 + (y - [B*t+b])^2 + (z - [C*t+c])^2 =
(xP - [A*t+a])^2 + (yP - [B*t+b])^2 + (zP - [C*t+c])^2.
The right-hand side is the square of the radius, and the center is
O(A*t+a, B*t+b, C*t+c).
Testing to see if the three points are colinear is a separate issue!
-Doctor Rob, The Math Forum
Check out our web site! http://mathforum.org/dr.math/
|
Search the Dr. Math Library: |
[Privacy Policy] [Terms of Use]


Ask Dr. MathTM
© 1994-2013 The Math Forum
http://mathforum.org/dr.math/