ROI visibility
This example shows how to set up the ROI elements and attributes to display regions of interest based on the code set in ROIVisibilityCode attribute.
The main elements and attributes of interest used for this example include:
Prep
Download and save Slicer's TinyPatient sample data.
Note
In order to access this dataset, you have to turn on the developer mode. Edit>Application Settings>Developer>Enable developer mode
Suggested folder structure to match script:
.
└─ ImageQuizzerData/
└─ ImageVolumes/
└─ TinyPatient/
├─ TinyPatient_CT.nrrd
└─ TinyPatient_Segments.seg.nrrd
Script example
The TinyPatient dataset used in this example holds two segments named: Tumor_Contour and Body_Contour. The script example repeats the presentation of the image and modifies the visibility code. The ContourVisibility attribute has been set to "Fill".
Only when the code is set to Select or Fill is the
<Session ContourVisibility="Fill">
<Page ID="TinyPatient" Descriptor="ROI Visibility All">
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Red</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Axial</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Sagittal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Green</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Coronal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Red</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="All"></ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="All"></ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Green</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="All"></ROIs>
</Image>
<QuestionSet ID="QS-Checkup" Descriptor="ROI Display">
<Question Type="CheckBox" Descriptor="Code: All">
<Option>Display all rois</Option>
</Question>
</QuestionSet>
</Page>
<Page ID="TinyPatient" Descriptor="ROI Visibility None">
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Red</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Axial</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Sagittal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Green</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Coronal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Red</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="None"></ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="None"></ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Green</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="None"></ROIs>
</Image>
<QuestionSet ID="QS-Checkup" Descriptor="ROI Display">
<Question Type="CheckBox" Descriptor="Code: None">
<Option>Display no rois</Option>
</Question>
</QuestionSet>
</Page>
<Page ID="TinyPatient" Descriptor="ROI Visibility Select One ROI">
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Red</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Axial</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Sagittal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Green</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Coronal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Red</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Select">
<ROI>Tumor_Contour</ROI>
</ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Select">
<ROI>Tumor_Contour</ROI>
</ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Green</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Select">
<ROI>Tumor_Contour</ROI>
</ROIs>
</Image>
<QuestionSet ID="QS-Checkup" Descriptor="ROI Display">
<Question Type="CheckBox" Descriptor="Code: Select">
<Option>Display tumor contour</Option>
</Question>
</QuestionSet>
</Page>
<Page ID="TinyPatient" Descriptor="ROI Visibility Select Multiple ROIs">
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Red</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Axial</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Sagittal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Green</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Coronal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Red</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Select">
<ROI>Body_Contour</ROI>
<ROI>Tumor_Contour</ROI>
</ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Select">
<ROI>Body_Contour</ROI>
<ROI>Tumor_Contour</ROI>
</ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Green</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Select">
<ROI>Body_Contour</ROI>
<ROI>Tumor_Contour</ROI>
</ROIs>
</Image>
<QuestionSet ID="QS-Checkup" Descriptor="ROI Display">
<Question Type="CheckBox" Descriptor="Code: Select">
<Option>Display tumor contour</Option>
<Option>Display body contour </Option>
</Question>
</QuestionSet>
</Page>
<Page ID="TinyPatient" Descriptor="ROI Visibility Ignore">
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Red</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Axial</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Sagittal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Volume" ID="CTSeries">
<DefaultDestination>Green</DefaultDestination>
<Layer>Background</Layer>
<DefaultOrientation>Coronal</DefaultOrientation>
<Path>ImageVolumes\TinyPatient\TinyPatient_CT.nrrd</Path>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Red</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Ignore">
<ROI>Body_Contour</ROI>
</ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Yellow</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Ignore">
<ROI>Body_Contour</ROI>
</ROIs>
</Image>
<Image Type="Segmentation" ID="Segmentation">
<DefaultDestination>Green</DefaultDestination>
<Layer>Segmentation</Layer>
<Path>ImageVolumes\TinyPatient\TinyPatient_Segments.seg.nrrd</Path>
<ROIs ROIVisibilityCode="Ignore">
<ROI>Body_Contour</ROI>
</ROIs>
</Image>
<QuestionSet ID="QS-Checkup" Descriptor="ROI Display">
<Question Type="CheckBox" Descriptor="Code: Ignore">
<Option>Display tumor only - ignore body contour</Option>
</Question>
</QuestionSet>
</Page>
</Session>