View Issue Details

IDProjectCategoryView StatusLast Update
0003299SketcherFeaturepublic2018-01-27 16:12
Reporterchrisb Assigned Toabdullah  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version0.17 
Target Version0.18Fixed in Version0.17 
Summary0003299: Sketcher should check redundant coincidences used with tangent constraints
DescriptionThere is a corresponding issue for the ValidateSketch tool: 0003298.

The tangent constraint is often used together with a coincidence constraint instead of applying it to the endpoints instead.
This often leads to problems in subsequent steps.

So maybe something could be done about that in the Sketcher, but I don't know what, and how complicated it would be.

    Make the solver detect these conflicts and warn the user about it?
    Make the solver detect these conflicts and transparently replace the dual constraint with the proper point-on-point tangent constraint?

NormandC
I would prefer the first solution, doing something automatic might prohibit the possibility to have the erroneous situation as an intermediate step.
Steps To Reproduce- Create two independent lines
- apply tangent constraint on the lines (not the endpoints!)
- apply coincidence to the endpoints

Steps two and three can be interchanged

Additional InformationOS: Mac OS X
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.12915 (Git)
Build type: Release
Branch: (HEAD detached at 90a71f3)
Hash: 90a71f34bc448d1396d2e27f4177885897199152
Python version: 2.7.14
Qt version: 5.6.2
Coin version: 4.0.0a
OCC version: 7.1.0
Locale: German/Germany (de_DE)
TagsNo tags attached.
FreeCAD Information

Relationships

related to 0003298 closedabdullah Validate sketch tool reports false positives on tangent constraints 

Activities

chrisb

2018-01-03 18:32

developer  

abdullah

2018-01-24 17:11

manager   ~0010844

Note to self:
- It is not feasible to modify the tangency constraints at solver level because once changed, they will be changed in at Sketcher level because they "travel" by pointer and are updated after solver execution. So it is not (clearly and cleanly) possible to decouple both.
- The path must be at Sketcher level, not at solver (or sketch.cpp) level.

abdullah

2018-01-25 16:15

manager   ~0010850

https://github.com/FreeCAD/FreeCAD/pull/1260

wmayer

2018-01-27 16:12

administrator   ~0010877

https://github.com/FreeCAD/FreeCAD/commit/180d722a536b03432e003a021b5a239fa6785ec8
https://github.com/FreeCAD/FreeCAD/commit/620188073e27dfd0748981ca1685c5fec88c7eb3

Issue History

Date Modified Username Field Change
2018-01-03 18:32 chrisb New Issue
2018-01-03 18:32 chrisb Status new => assigned
2018-01-03 18:32 chrisb Assigned To => abdullah
2018-01-03 18:32 chrisb File Added: tangentWrongUsage.FCStd
2018-01-03 20:34 Kunda1 Description Updated
2018-01-03 20:34 Kunda1 Relationship added related to 0003298
2018-01-24 17:11 abdullah Note Added: 0010844
2018-01-25 16:15 abdullah Note Added: 0010850
2018-01-27 16:12 wmayer Status assigned => closed
2018-01-27 16:12 wmayer Resolution open => fixed
2018-01-27 16:12 wmayer Fixed in Version => 0.17
2018-01-27 16:12 wmayer Note Added: 0010877