← All bug reports

FS#2482RShape::getIntersectionPointsCC still failing for touching circles ... Tangent arcs

Type
Bug
Status
Assigned
Category
QCAD (main)
Severity
Low
Priority
Low
Reported version
3.28.1
Operating system
All
Reported
2023-07-02 by CVH
Votes
1

Andrew,

Referring to this forum post:
https://www.qcad.org/rsforum/viewtopic.php?f=74&t=10152

With radii 1341.35667735 and 26 the relative tolerance is 0.00683678 and exceeds the former used fixed tolerance of 1e-4.

These arcs will then be considered to be tangent and the intersection point is 0.31024 units to the left of where we expect it.

Implemented: https://github.com/qcad/qcad/commit/77ae3e4518cc34f178779d2d2c724adcf80c229d#diff-dcc4e31eaeaed5a047f65dbce4ddda4bcd4d604e9e1005ee8481ded273768449

Updated: https://github.com/qcad/qcad/commit/071b60acd1176e6301bf6b6fcf716684221a97e8#diff-dcc4e31eaeaed5a047f65dbce4ddda4bcd4d604e9e1005ee8481ded273768449

I had already expressed my reserves on the relative tolerance but that was already a better solution for small arcs:
https://www.qcad.org/rsforum/viewtopic.php?f=33&t=8775&p=34907#p34907

We could limit the tolerance by:
A- The smallest of the fixed and the relative.
B- A relative tolerance based on R2 there circle 1 is forced to be the larger one.

This will never account for the position in the plane.
At a certain point the tolerance will be less than the accuracy/certainty of the values.

Regards,
CVH