Circle through three points (in 2D)
Given the coordinates of three points (in 2D), how can I plot the circle through them?
add a comment
Given the coordinates of three points (in 2D), how can I plot the circle through them?
This may not be the most efficient solution but works.
pta=[1,2]
ptb=[2,3]
ptc=[-1,3]
a=var('a')
b=var('b')
r=var('r')
func_cir=(x-a)**2+(y-b)**2==r**2
eq1 = func_cir.subs(x==pta[0]).subs(y==pta[1])
eq2 = func_cir.subs(x==ptb[0]).subs(y==ptb[1])
eq3 = func_cir.subs(x==ptc[0]).subs(y==ptc[1])
sol = solve([eq1,eq2,eq3],a,b,r)
p1=list_plot([pta,ptb,ptc])
p2=circle((sol[1][0].rhs(),sol[1][1].rhs()),sol[1][2].rhs())
(p1+p2).show()
Please start posting anonymously - your entry will be published after you log in or create a new account.
Asked: 2012-03-04 20:43:16 +0100
Seen: 602 times
Last updated: Mar 04 '12