Register to reply

Finding circle center from two points and an arc length

by MegatronX
Tags: circles arcs
Share this thread:
MegatronX
#1
Sep29-11, 07:16 PM
P: 5
I'm trying to find the equation for a circle given two points in x, y and the starting angle, arc length, and two points along the circle. I need to find the equation because I need to translate a sprite along the curved path from one point to another.

The situation ends up looking like this:


A
|\
|a\
|--\
|---\
----c C
|---/
|--/
|b/
|/
B
A = point 1
B = point 2
C = center of the circle
the arc travels from a to b
c = arc angle

Now, I can clearly determine the length of all sides as well as the angles. thats not problem. I can use that to make a system of equations and solve them together. This works, but the problem is that I need to be able to do this programmatically, and attempting to solve systems of equations in C++ is proving to be pretty difficult. I was hoping there was a more straight forward/easy way to find the center when two points are know and all the angles/lengths are known.

Thanks in advance for any help
Phys.Org News Partner Mathematics news on Phys.org
Heat distributions help researchers to understand curved space
Professor quantifies how 'one thing leads to another'
Team announces construction of a formal computer-verified proof of the Kepler conjecture
LCKurtz
#2
Sep29-11, 09:36 PM
HW Helper
Thanks
PF Gold
LCKurtz's Avatar
P: 7,661
Quote Quote by MegatronX View Post
I'm trying to find the equation for a circle given two points in x, y and the starting angle, arc length, and two points along the circle.
If I understand you, you are given the coordinates of two points on the circle and the length of the arc between them. But what do you mean by the "starting angle"?
MegatronX
#3
Sep29-11, 09:44 PM
P: 5
by starting angle I'm referring to the the angle the starting point makes relative to the center. That is where the arc angle starts (its just simply the angle the starting point makes)

LCKurtz
#4
Sep29-11, 09:48 PM
HW Helper
Thanks
PF Gold
LCKurtz's Avatar
P: 7,661
Finding circle center from two points and an arc length

Quote Quote by MegatronX View Post
by starting angle I'm referring to the the angle the starting point makes relative to the center. That is where the arc angle starts (its just simply the angle the starting point makes)
Angles require two sides. Are you talking about angle c in your picture? If not, what two sides make up that angle?
MegatronX
#5
Sep29-11, 10:00 PM
P: 5
In thi case the positive x-axis (angle 0) (originating from the center) and the radius from C to A form the starting angle. Now that I think about it, the starting angle doesnt need to be given, it can be derived by which point A or B forms the lesser starting angle.
MegatronX
#6
Sep29-11, 10:30 PM
P: 5
No, C is the unknown and it can be anywhere. Its directly dependent on A and B. I know point A, point B and the angle of the arc that needs to be drawn between them. I assumed I'd need to provide a starting angle for the arc but now I don't think that's necessary.

In the drawing, C is the center of the circle that describes the arc between A and B. If it's possible, i want to be able to find C (the center of the circle) without solving a system of linear equations as that is proving to be difficult when solving. programmatically.

I'm sorry, i guess I'm not making this clear enough heh. Thansk for the help so far though :)
LCKurtz
#7
Sep29-11, 10:37 PM
HW Helper
Thanks
PF Gold
LCKurtz's Avatar
P: 7,661
Quote Quote by MegatronX View Post

A
|\
|a\
|--\
|---\
----c C
|---/
|--/
|b/
|/
B
I was hoping there was a more straight forward/easy way to find the center when two points are know and all the angles/lengths are known.

Thanks in advance for any help
Let d be the distance from A to B. If you know A and B you can find its mid-point M. Lets say the vector AB is <s,t>. Then a vector perpendicular to it is <-t,s>. Divide that vector by its length and call the resulting vector V. If you know the radius r you can calculate the height h of your triangle with the Pythagorean theorem using hypotenuse r and leg d/2.

Then if O is the origin, the coordinates of the center are OA+ (1/2)ABą hV, with the sign chosen depending on which side of AB the center is on.
MegatronX
#8
Sep30-11, 01:10 AM
P: 5
That works great

Thank you


Register to reply

Related Discussions
Finding Points on the Unit Circle General Math 6
Define Circle Knowing Two Points and ARC LENGTH Only. General Math 4
Center,Radius of a 3 Dimensional circle given 3 points Precalculus Mathematics Homework 1
Finding the Center of a circle Introductory Physics Homework 6
Given a locus of points, show that it is a circle (find its radius and center) Calculus & Beyond Homework 1