View Issue Details

IDProjectCategoryView StatusLast Update
0003201PartDesignBugpublic2017-09-29 13:47
ReporterGeneFC Assigned Towmayer  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
PlatformWindows 7 64 bitOSWindows 7 64 bitOS VersionWindows 7 64 bit
Product Version0.17 
Fixed in Version0.17 
Summary0003201: Cross-linking of sketch visibility
DescriptionI encountered a strange cross-linking of sketch visibility that may be related to the recent changes to global/local scope behavior.

Attached is a simple object made in the Part Design workbench, consisting of three sketches either padded or pocketed. No errors are encountered, and the Dependency Graph and DAG View look completely OK. No interesting messages from the Report View or the Python Console. The final object can be used subsequently for Path Job creation without issue.

The quirk is that going back and reopening and then closing one of the sketches leads to a visibility cross-linking of two or all three sketches, even if no changes were made to the sketch that was opened.

Thereafter, selecting any sketch from the main tree and toggling visibility with the space bar changes the visibility of all of the sketches instead of just the one selected. The selection window shows the additional sketches are selected even when only sketch one is clicked.

The dependency graph and the DAG view do not change, and no other errors or messages are seen. If I save the quirky file and reopen it the cross-linking is gone. The quirks come back if I go though the same steps.

I went back and tried the same FCStd file with an FC version from about a month ago (0.17.11939) and the quirk did not occur.

I have tried similar tests with the second and third sketches either mapped to faces or not mapped. There is no difference. I have also seen the same behavior with numerous other files.

The behavior appears to be 100% repeatable.

Steps To ReproduceOpen any sketch in attached FCStd file.

Close sketch without making any changes (making changes does not seem to matter)

Select one of the other sketches. Observe that two sketches are selected.

If this process is done a couple of time all three sketches will be selected and highlighted when any one is clicked.
Additional InformationForum discussion

https://forum.freecadweb.org/viewtopic.php?f=3&t=24630

OS: Windows 7
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.12196 (Git)
Build type: Release
Branch: master
Hash: 6f2d59540a9b1647eeb9b95ca0fffdc1439f2a87
Python version: 2.7.8
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.1.0
Locale: English/UnitedStates (en_US)
TagsNo tags attached.
FreeCAD Information

Activities

GeneFC

2017-09-28 17:22

reporter  

Sketch_test.FCStd (30,310 bytes)

wmayer

2017-09-29 12:05

administrator   ~0010213

The issue is shown by this commit: https://github.com/FreeCAD/FreeCAD/commit/2dc09c5e4d252e9a479942a256d57938723ece00#diff-7433803b464ef4aa6214a9eee4f6b460

It's the change inside the function DocumentItem::populateItem which causes this odd behaviour. This has the effect that the selection in the tree view is not cleared properly any more and when clicking on an item it sets this and the cached items as selected.

The open question is if the above change is the actual error or if it only shows the symptoms of a deeper bug.

wmayer

2017-09-29 13:47

administrator   ~0010214

https://github.com/FreeCAD/FreeCAD/commit/72bdd48a081f2bc98f1093dc5de5ebe03ef04186

Issue History

Date Modified Username Field Change
2017-09-28 17:22 GeneFC New Issue
2017-09-28 17:22 GeneFC File Added: Sketch_test.FCStd
2017-09-29 12:05 wmayer Status new => confirmed
2017-09-29 12:05 wmayer Note Added: 0010213
2017-09-29 13:47 wmayer Assigned To => wmayer
2017-09-29 13:47 wmayer Status confirmed => closed
2017-09-29 13:47 wmayer Resolution open => fixed
2017-09-29 13:47 wmayer Fixed in Version => 0.17
2017-09-29 13:47 wmayer Note Added: 0010214