View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003127||Sketcher||Feature||public||2017-07-15 03:40||2018-01-30 11:10|
|Fixed in Version||0.17|
|Summary||0003127: Apply tangent constrains while preventing geometry from moving|
|Description||When applying a tangent constraint to two geometries, the position and orientation of both are changed by the solver. In the case of an arc, this sometimes results in the arc tangent direction reversing, depending on the difference between the tangents of the geometries before they are constrained.|
Avoiding this behavior requires drawing the geometries so that they are tangentially aligned before applying the constraint.
A desirable action would be to specify one geometry as "fixed" when applying the constraint, preventing it's orientation and position from changing.
Also, the tangent of the moveable geometry should not change by more than 90 degrees from the originally drawn tangent, as doing so would result in a reversal of the tangent - the implicit assumption being that the user intuitively draws geometry in a generally aligned fashion.
While the feature exceeds the design intent of the solver, it would address the undesirable behavior of an arc's tangent reversing, creating a circle. At a bare minimum, this condition should be checked for - that the starting and ending angle of the result doesn't exceed a maximum value... intuitively, it should not be substantially different than the original angle delta of the arc. The primary problem seems to be caused by complexes of constrained geometry as noted in the video linked in the thread below.
See the following thread for more discussion and video demonstrating the failures:
|Steps To Reproduce||Hard to reproduce what causes the arc failures. It appears what happens is the endpoint of the arc is moved past the end point of the other geometry, forcing the arc to be drawn as a circle in order to connect. Will try to create a geometry arrangement that triggers this condition and upload it.|
||Assigned to @abdullah per https://forum.freecadweb.org/viewtopic.php?f=8&t=22277&start=60#p182535|
The Block constraint has recently been merged to master. Is that what we were looking for in this ticket? If not, could you please further specify what we need?
||oh... I still have to learn to use the tracker... what I have just asked in the previous note...|
It's a bit hard to determine what needs to be done to solve this problem. Much of it has to do with the solver producing undesirable (but not incorrect) results. Insofar as the block constraint is concerned, I would say it certainly provides part of the solution.
It might be wise to consider it closed for a lack of a clear definition at this point. I'm developing a much more constrained workflow which may, in the end, generally avoid this issue. If I still run into the same problem, I'd sooner open a new ticket, if only because the use case will be different.
||As Joel says, it is difficult to redefine ATM what else would be required. Feel free to reopen the ticket or submit a new ticket when/if needed.|
|2017-07-15 03:40||graffy||New Issue|
|2017-07-15 03:44||Kunda1||Tag Attached: constraints|
|2017-07-15 03:45||Kunda1||Assigned To||=> Kunda1|
|2017-07-15 03:45||Kunda1||Status||new => assigned|
|2017-07-15 03:45||Kunda1||Assigned To||Kunda1 => abdullah|
|2017-07-15 03:45||Kunda1||Note Added: 0009758|
|2018-01-28 17:59||abdullah||Note Added: 0010889|
|2018-01-28 18:00||abdullah||Status||assigned => feedback|
|2018-01-28 18:00||abdullah||Note Added: 0010890|
|2018-01-28 18:34||graffy||Note Added: 0010891|
|2018-01-28 18:34||graffy||Status||feedback => assigned|
|2018-01-28 20:57||Kunda1||Tag Attached: #pending|
|2018-01-29 13:31||abdullah||Status||assigned => closed|
|2018-01-29 13:31||abdullah||Resolution||open => fixed|
|2018-01-29 13:31||abdullah||Fixed in Version||=> 0.17|
|2018-01-29 13:31||abdullah||Note Added: 0010893|
|2018-01-30 11:10||Kunda1||Tag Detached: #pending|