Markups placement not displaying in a scene without any data

I’ve realized when trying to add markups fiducials in persistent mode, the display is not updated properly.
This happens only when there is no data in the scene. When adding fiducials, they won’t show up unless:

  • A fiducial is placed in another panel,
  • The Modified() function of the markups node is called.
    To reproduce it, in an empty scene, choose the fiducial placement tool in persistent mode, place a few in one panel (the first one will show up). The rest will only show up if another fiducial is placed in another panel.

I was able to reproduce the issue based on your description. We are in the process of reworking markup widgets, so I’m not sure anyone would have time to work on fixing the existing widgets. However, you can manually trigger a rendering update after each fiducial placement like this:

layoutManager = slicer.app.layoutManager()
for sliceViewName in layoutManager.sliceViewNames():
  layoutManager.sliceWidget(sliceViewName).sliceView().renderWindow().Render()
1 Like