If I'm not mistaken, you're on the wrong track. Constructing an arc from two points and a radius is a very different problem from the three-point construction.
Given two points and a radius, there are 4 different arcs you can make (that lie on 2 circles). Here's some code that finds the centers of the 2 circles that the arcs can lie on:
You can probably work from that to construct the arc you want.Code://points (x1,y1) and (x2,y2) //radius r var mx = (x1+x2)/2; var my = (y1+y2)/2; var leg1x = mx-x1; var leg1y = my-y1; var leg1 = Math.sqrt(leg1x*leg1x + leg1y*leg1y); if(leg1 > Math.abs(r)) return; //no solution var leg2 = Math.sqrt(r*r - leg1*leg1); var leg2x = leg1y*leg2/leg1; var leg2y = -leg1x*leg2/leg1; var c1x = mx+leg2x; var c1y = my+leg2y; var c2x = mx-leg2x; var c2y = my-leg2y;




Reply With Quote
