Documentation/4.4/Modules/Volumes
From Slicer Wiki
Home < Documentation < 4.4 < Modules < Volumes
For the latest Slicer documentation, visit the read-the-docs. |
Introduction and Acknowledgements
:Title: :Author(s)/Contributor(s): :License: :Acknowledgements:
| |||||||||
|
Module Description
Use Cases
- Examples:
- Use the SampleData module to load the MR Head volume. You can control the scalar display options using this module.
- Use the SampleData module to download the DTI Head volume. A tensor-specific display interface will allow you to display a variety of scalar modes and display glyphs.
- FAQ:
- When loading a 2D image(jpg, png, tiff ...), the window level(colors) might be skewed. To see the original colors switch the Window Level combobox to Manual Min/Max, then set Min to 0 and Max to 255.
- Also use the Spacing field to enter the volumetric pixel sizes of the image data.
- While you can display color volumes as slices, most slicer modules do not work natively with RGB or RGBA data, the new VectorToScalarVolume converter can be used to create a volume for use, for example, with the Editor. (added post-4.1).
Tutorials
- Tutorial about loading and viewing data.
Panels and their use
Parameters:
() * ': ** ': *** ':
List of parameters generated transforming this XML file using this XSL file. To update the URL of the XML file, edit this page. |
![]() |
Similar Modules
- Each displayable type has a similar visualization control interface (for example, the Models, Tractography, Annotations...):
- Models: control the models/surfaces
- Annotations: control the annotations
- Volume Rendering: volume render in the 3D view(s).
- Extensions
- Image Maker: create a volume from scratch.
References
N/A
Information for Developers
Section under construction. |
How to create a volume node from scratch?
You need to create a vtkImageData, a vtkMRMLScalarVolumeNode and a vtkMRMLScalarVolumeDisplayNode.
vtkNew<vtkImageData> imageData; imageData->SetScalarTypeToUnsignedChar(); imageData->SetNumberOfScalarComponents(1); imageData->SetDimensions(10,10,10); imageData->Allocate(); // initialize the pixels here. vtkNew<vtkMRMLScalarVolumeNode> volumeNode; volumeNode->SetAndObserveImageData(volume); volumeNode->SetOrigin( -10., -10., -10.); volumeNode->SetSpacing( 2., 2., 2. ); mrmlScene->AddNode( volumeNode.GetPointer() ); vtkNew<vtkMRMLScalarVolumeDisplayNode> displayNode; mrmlScene->AddNode( displayNode.GetPointer() ); volumeNode->SetAndObserveDisplayNodeID(displayNode->GetID());
Note that the origin and spacing must be set on the volume node instead of the image data. The Image Maker extension module creates a volume from scratch.
IO
Here is the list of supported file formats.
Important classes:
qSlicerVolumesIO.[h/cxx]] vtkSlicerVolumesLogic.[h/cxx] vtkMRMLVolumeArchetypeStorageNode.[h/cxx]
The following options can be passed to load volumes programmatically:
Option | Type | Default | Description |
---|---|---|---|
labelmap | bool | false | Mark the volume a label map |
center | bool | false | Discard file origin information and move the center of the volume in 0,0,0 |
singleFile | bool | false | Load the file as part of a series of 2D files that represent a 3D volume |
autoWindowLevel | bool | true | Automatically compute the window level based on the volume pixel intensities |
discardOrientation | bool | false | Discard file orientation information |