mirror of
https://github.com/jankae/LibreVNA.git
synced 2026-04-05 14:35:23 +00:00
Fix circle/line intersection
This commit is contained in:
parent
71239842f6
commit
0281f13ba6
1 changed files with 5 additions and 0 deletions
|
|
@ -295,6 +295,11 @@ bool TracePolar::constrainLineToCircle(QPointF &a, QPointF &b, QPointF center, d
|
|||
// adjust both points, order does not matter
|
||||
a = inter1;
|
||||
b = inter2;
|
||||
} else if(!inter1betweenPoints && !inter2betweenPoints) {
|
||||
// the line intersect the circle but outside of the segment defined by the points -> ignore
|
||||
a += center;
|
||||
b += center;
|
||||
return false;
|
||||
} else {
|
||||
// exactly one intersection point must lie between the two line points, otherwise we would have returned already
|
||||
auto inter = inter1betweenPoints ? inter1 : inter2;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue