Some "valid" shapes are being passed to findShapeOutline where edges
that should be connected are in fact separated 10x the expected tolerance
(2*Precision::Confusion) for 2 overlapping TopoDS_Vertex.
IntTools_Tools:ComputeVV also reports these Vertices as further apart than
their combined tolerances should allow.
This change introduces a tolerance into DrawUtil and EdgeWalker vertex
comparisions that is quite "sloppy" (0.00001) but which handles the sample
objects correctly. This tolerance is adequate for drawings. Other uses
should be considered on case by case basis.
The problem occurs when a child object is no longer claimed by its
former parent. The child tree item is not added back to Document root
even if it is the only instance left, which resulting the child object
disappearing entirely from the tree view.
@peterl94 said anaconda's Qt doesn't offer private headers. The
definitions used have almost no code associated with them, I simply
copied them to the cpp file.
See thread "ana(conda) windows packaging", starting from this post:
https://forum.freecadweb.org/viewtopic.php?f=4&t=21405&start=70#p167370
The TreeView item (DocumentObjectItem) and DocumentObject now have a N:1
relationship. Adding or removing object with claimed children no longer
affects existing TreeView items.
Looks like it was impossible to figure out if tree item of object is
expanded or collapsed. Now, it can be queried by e.g. `"Expanded" in
App.ActiveDocument.Fusion.State`
The StringerOverlap property allows to raise the stringers realtive to
the treads, so that they are actually beside them.
This type is often used for building wooden stairs.
Previously, a small offset in the same direction of section is added to
the section height to avoid tagent plane cut. Now we'll retry by adding
offset in the oppsite direction if the first attemp fails.