Re: preparation for 2.0.6, any blocker?
Posted by
dxli on
Oct 28, 2014; 3:11pm
URL: https://forum.librecad.org/preparation-for-2-0-6-any-blocker-tp5710555p5710578.html
It's not trivial to improve the current equation solver. I think it's straight forward to implement a geometrical algorithm here for the "tangential and 2 points" feature.
The current algorithm is based on hyperbola:
for a given circle C, tangential circle of circle C passing a given point P will have its center on a hyperbola, with foci at center of C and P, and the radius of C is twice of the semi-major axis, or r=2a. For simplicity, denote this hyperbola as H(C, P)
therefore, given C, and two points (P1 and P2), the possible solutions are circles centered at intersections of two hyperbolas: H(C, P1) against H(C, P2)
This algorithm is fine, but our equation solver fails to find all possible intersections of the two hyperbolas: H(C, P1), H(C, P2)
I will implement a geometry algorithm to avoid relying on high performance equation solving.
Quenzo wrote
Thank you very much for your effort, and for all people who dedicate their time to this project. Whenever I can, I will test the application as a user (I'm not a code programmer, but I'm an experienced user of CAD and CAM) and I'm going to communicate any error I seeing, is the only way I can help.
Best regards
Manel