View Issue Details

IDProjectCategoryView StatusLast Update
0002521Slicer4Module SceneViewspublic2014-03-06 06:08
Reporterkikinis Assigned Tomillerjv  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
PlatformMacOSOS XOS Version10.8.1
Product VersionSlicer 4.1.1 
Target VersionSlicer 4.2.0Fixed in VersionSlicer 4.2.2-1 
Summary0002521: Restoring a sceneview crashes slicer - lable outlines + linking
Description

data in ronsexamples 9-13 perth
load scene
open sceneview module
restore tumorcross section
enjoy crash

I created this scene from scratch by loading all the elements, colorizing and configuring. There should be no "legacy crud" in the mrml file.

TagsNo tags attached.

Activities

2012-09-14 03:34

 

perthcase.rtf (202,790 bytes)
nicole

nicole

2012-09-20 08:01

administrator   ~0006139

can't reproduce on linux, trying mac...

nicole

nicole

2012-09-28 14:13

administrator   ~0006270

works on mac 2012-09-27

kikinis

kikinis

2012-10-22 03:47

developer   ~0006664

The crash does not happen, but the scene does not restore properly either. See attached image: The sceneview restored in 10-20 nightly on mac and the thumbnail from the sceneview png file.

  1. the fiducials are not visible
  2. the label map is not rendered as outline, but as solid
    From a user perspective, both of these are serious issues that essentially make the sceneview useless.

2012-10-22 03:47

 

kikinis

kikinis

2012-10-22 03:48

developer   ~0006665

and yes, the crash does not happen anymore.

nicole

nicole

2012-10-23 08:14

administrator   ~0006696

  1. in the .mrml file, the annotation display nodes have their visibilities set to false, while the annotation nodes have their deprecated visible flag set to true. The display node settings are being used now rather than the flag on the fiducial nodes. See the attached new mrml file with the display node settings toggled, 2012-10-23-Scene.mrml

2012-10-23 08:15

 

2012-10-23-Scene.mrml (394,698 bytes)
nicole

nicole

2012-10-23 10:19

administrator   ~0006697

  1. is probably due to the changes in the way linking slices works, some of the slice composite nodes in the scenes have linking turned on, and some of the label volumes have outlines on and some off, and some settings are getting over written due to the linking. Debugging print out from restoring a the tumor crosssection scene view:
    Show module (name): "SceneViews"
    updateWidgetFromMRMLSliceNode: label outline on node Red = 1
    Copy: node label outline = 1
    updateWidgetFromMRMLSliceNode: label outline on node Green = 1
    updateWidgetFromMRMLSliceNode: label outline on node Yellow = 1
    updateWidgetFromMRMLSliceNode: label outline on node Red = 1
    updateWidgetFromMRMLSliceNode: label outline on node Yellow = 1
    Copy: node label outline = 0
    updateWidgetFromMRMLSliceNode: label outline on node Green = 1
    updateWidgetFromMRMLSliceNode: label outline on node Red = 1
    updateWidgetFromMRMLSliceNode: label outline on node Yellow = 0
    showLabelOutline, show = 0, node Yellow is currently = 1, linked = 1
    updateWidgetFromMRMLSliceNode: label outline on node Red = 0
    showLabelOutline, show = 0, node Red is currently = 0, linked = 1
    showLabelOutline, show = 0, node Red is currently = 0, linked = 1
    showLabelOutline, show = 0, node Red is currently = 1, linked = 1
    updateWidgetFromMRMLSliceNode: label outline on node Green = 0
    showLabelOutline, show = 0, node Green is currently = 0, linked = 1
    showLabelOutline, show = 0, node Green is currently = 0, linked = 1
    showLabelOutline, show = 0, node Green is currently = 0, linked = 1
    showLabelOutline, show = 0, node Yellow is currently = 0, linked = 1
    showLabelOutline, show = 0, node Yellow is currently = 0, linked = 1
    updateWidgetFromMRMLSliceNode: label outline on node Green = 0
    Copy: node label outline = 0
    updateWidgetFromMRMLSliceNode: label outline on node Green = 0
    updateWidgetFromMRMLSliceNode: label outline on node Red = 0
    updateWidgetFromMRMLSliceNode: label outline on node Red = 0
    updateWidgetFromMRMLSliceNode: label outline on node Yellow = 0
    updateWidgetFromMRMLSliceNode: label outline on node Yellow = 0
    updateWidgetFromMRMLSliceNode: label outline on node Green = 0
    updateWidgetFromMRMLSliceNode: label outline on node Green = 0
millerjv

millerjv

2012-10-24 07:22

developer   ~0006719

According to "git log --author=millerjv --grep=link" I have fixed this problem twice before.

2/10/2010 #6543396fb, r12232

2/21/2012 #f6dada754, r19319

So it looks as though I am not scheduled to fix it again until 2/2014.

I will take a look at what has been changed since r12232.

millerjv

millerjv

2012-10-24 07:34

developer   ~0006720

r12232 introduced priorities so that SliceLinkLogic would be last things to be notified when restoring a node, so that link behavior would fire last. It also keeps a counter on how deep events are being broadcast.

The idea behind r12232 would be that linking behavior would not trigger while restoring a scene/view since all nodes should be properly re-populated directly from the data model.

millerjv

millerjv

2012-10-24 09:34

developer   ~0006724

Label outlines in Scene View restore are fixed in r21238.

Label outlines were not being managed by the SliceLinkLogic which properly manages broadcasting linked parameters during restore operations. Rather, label outline was being managed directly by qMRMLSliceControllerWidget.

Annotation visibility is still not managed properly. This is outside of the SliceLinkLogic control.

r21238 just fixed the label outline linking. There are other parameters that still being managed by the qMRMLSliceControllerWidget that should not. I will enter a bug on the other parameters that are being managed by qMRMLSliceControllerWidget but should be managed by SliceLinkLogic.

millerjv

millerjv

2012-10-24 11:15

developer   ~0006725

Slice visibility in Scene View restore are fixed in r21239.

Slice visibility was not being managed by the SliceLinkLogic which properly manages broadcasting linked parameters during restore operations. Rather, slice visibility was being managed directly by qMRMLSliceControllerWidget.

Annotation visibility is still not managed properly. This is outside of the SliceLinkLogic control.

r21238 just fixed the slice visibility linking. There are other parameters that still being managed by the qMRMLSliceControllerWidget that should not. I will enter a bug on the other parameters that are being managed by qMRMLSliceControllerWidget but should be managed by SliceLinkLogic.

millerjv

millerjv

2012-10-24 13:57

developer   ~0006730

Slice visibility and label outline issue has been fixed.

Annotation visibility is (according to Nicole) an issue with the scene file. See note 0006696.

Issue History

Date Modified Username Field Change
2012-09-14 03:34 kikinis New Issue
2012-09-14 03:34 kikinis Status new => assigned
2012-09-14 03:34 kikinis Assigned To => nicole
2012-09-14 03:34 kikinis File Added: perthcase.rtf
2012-09-20 08:01 nicole Note Added: 0006139
2012-09-28 14:13 nicole Note Added: 0006270
2012-09-28 14:13 nicole Status assigned => resolved
2012-09-28 14:13 nicole Fixed in Version => Slicer 4.2.0 - coming release
2012-09-28 14:13 nicole Resolution open => unable to reproduce
2012-10-22 03:47 kikinis Note Added: 0006664
2012-10-22 03:47 kikinis Status resolved => feedback
2012-10-22 03:47 kikinis Resolution unable to reproduce => reopened
2012-10-22 03:47 kikinis File Added: Screen Shot 2012-10-22 at 7.44.14 AM.png
2012-10-22 03:48 kikinis Note Added: 0006665
2012-10-23 08:14 nicole Note Added: 0006696
2012-10-23 08:15 nicole File Added: 2012-10-23-Scene.mrml
2012-10-23 10:19 nicole Note Added: 0006697
2012-10-23 10:20 nicole Assigned To nicole => millerjv
2012-10-23 10:20 nicole Severity crash => major
2012-10-23 10:20 nicole Status feedback => assigned
2012-10-23 10:20 nicole Fixed in Version Slicer 4.2.0 - coming release =>
2012-10-23 10:20 nicole Summary Restoring a sceneview crashes slicer => Restoring a sceneview crashes slicer - lable outlines + linking
2012-10-24 07:22 millerjv Note Added: 0006719
2012-10-24 07:34 millerjv Note Added: 0006720
2012-10-24 09:34 millerjv Note Added: 0006724
2012-10-24 11:15 millerjv Note Added: 0006725
2012-10-24 13:57 millerjv Note Added: 0006730
2012-10-24 13:57 millerjv Status assigned => resolved
2012-10-24 13:57 millerjv Resolution reopened => fixed
2012-11-23 05:40 kikinis Status resolved => closed
2014-03-06 06:08 jcfr Fixed in Version => Slicer 4.2.2-1