I am viewing 2 segments in the 3D viewer - insect exoskeleton in one segment and some internal anatomy in a 2nd segment. The exoskeleton has its opacity turned down so I can view the internal segment “in situ”. What I would like to be able to do is place a fiducial on the internal anatomy segment by clicking in the 3D viewer. What happens, though, is the intersection test hits the exoskeleton first and places the fiducial on the surface of the exoskeleton.
Is there a way to tell fiducial placement to ignore some segments?
You can only set “selectable” attribute per node. So, if you want to make the exoskeleton visible but want to prevent clicking on it then export the exoskeleton to a model and make it not selectable.
If you install SlicerVirtualReality extension then you get a context-menu item in Data module that allows toggle selectable state.
If you don’t want or cannot install SlicerVirtualReality extension then you can make a mode node not selectable using the Python console. For example, if you exported Segment_2 to a model node, you can prevent placing markup points by typing this:
getNode('Segment_2').SetSelectable(False)
This requires recent nightly version (Slicer-4.10 does not contain this feature).
Yes, and you specify “selectable” property for the whole segmentation node, with all segments in it. However, when you export segments to models, each segments becomes a separate model node that you can make selectable/non-selectable.