shop-talk
[Top] [All Lists]

Re: Finding the center of a circle

To: Drew Rogge <drew@pixar.com>
Subject: Re: Finding the center of a circle
From: "Peter J. Thomas" <pjthomas@ntplx.net>
Date: Thu, 02 Aug 2001 20:32:35 -0400
Drew's method is a good one, however, it requires you to connect the 
intersection
points and may not be accurate enough (or it may be for the application).  You
also have to mark outside the circle and this may not be desirable.

More accurate, if you know the diameter of the hole.  Half of that is the
radius.  Set the dividers to the radius and sweep three arcs through the center
from three points 120 degrees apart on the edge of the circle.

If you got the radius correct the three arcs will meet at the center.  Two arcs
are enough, but the third is a sanity check.  If the three arcs don't meet they
will form a triangle.  Adjust the dividers to the center of the triangle and try
again 40 degrees from the first three points.  This should come pretty close the
center.  If it still produces a triangle try one more time another 40 degrees
from the second set of points.  Each iteration make slightly longer arcs (more
sweep, not more radius)  so that you can distinguish them from the previous 
arcs.

Peter Thomas


Drew Rogge wrote:

> One way is to use a pair of dividers. Set the distance between the
> points to something a bit over the circle's radius. From four points
> approximately 90 degrees apart on the circles circumference, sweep
> small arcs close to where you estimate the center to be. Be sure
> that each small arc intersects the two which are adjacent to it.
> Now draw lines through the arc intersections which are diametrically
> opposed to each other. The intersection of these two lines is the
> center of the circle.
>
> Hope this is clear enough.
>
> Drew

///
///  shop-talk@autox.team.net mailing list
///  To unsubscribe send a plain text message to majordomo@autox.team.net
///  with nothing in it but
///
///     unsubscribe shop-talk
///
///


<Prev in Thread] Current Thread [Next in Thread>