I have a requirement:
When I switch to Volume Rendering module, I can Enable and Display ROI. Then a AnnotationROI node will generate and display in 3d view and three slice views.
But I want to hide this AnnotationROI node only in 3d view.
What I have tried:
I switch to Annotations module, and click “Edit” icon, then “Modify Annotation Properities” dialog appear, and I expand Advanced button, but I can’t hide this AnnotationROI in 3d view separate.
You need to switch to using markups ROI for this (which has many advantages anyway). In its display node you can control 2D and 3D visibility separately. You can also have multiple display nodes and specify in each of them which views you want to use them - this is useful if you want to make the ROI appear not just with different visibility but also different color, opacity, etc. in each view.
@lassoan Using latest Slicer preview, going into the Volume Rendering module by default still creates a vtkMRMLAnnotationROINode instead of a vtkMRMLMarkupsROINode. Is there a plan to switch to the new ROI soon?
When I create a vtkMRMLMarkupsROINode using “Create ROI” from the Volume Rendering module, it is creating a Markups ROI that has no control points defined. Therefore when I enable “Crop”, the volume rendering completely disappears from the 3D View. I have to click the “Fit to Volume” button to actually begin using this new markups ROI easily.
I think we can switch the Volume Rendering module to use markups ROI. I will just add markups ROI support to CLI modules first.
When you manually create an ROI in Volume Rendering module (either annotation or markups) then it will have its default size. You can click “Fit to volume” button to fit to the volume. This is done automatically for the ROI that is created automatically, so this will not have to be changed when we switch to markups ROI.
I’ve submitted a pull request that updates Crop Volume and Volume Rendering modules to use markups ROI by default (and adds a few related features and fixes):