# 3D Slicer show nrrd file

**URL:** https://discourse.slicer.org/t/3d-slicer-show-nrrd-file/30334
**Category:** Development
**Tags:** python
**Created:** [July 1, 2023, 10:18am UTC](https://discourse.slicer.org/t/3d-slicer-show-nrrd-file/30334 "2023-07-01T10:18:00Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![mazurkin.daniel](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mazurkin.daniel/32/66512_2.png) [@mazurkin.daniel](https://discourse.slicer.org/u/mazurkin.daniel)
#### Post date: [July 1, 2023, 10:18am UTC](https://discourse.slicer.org/t/3d-slicer-show-nrrd-file/30334/1 "2023-07-01T10:18:00Z")

</div>

Hello! I’m rewriting the DICOMWebBrowser extension to display a model from VolumeRendering with a selected study when starting 3D Slicer from console. How can I achieve this display? Currently, an MRMLNode is added, but I have to press a display button (I’ve attached a screenshot). How can I make it so that I don’t have to press the display button? I’ve attached the source code.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/2/6/262955c89a7d7abe3986342e968c1a6124d101a8.png)  
MySourceCode for this task:

```auto
import slicer

logic = slicer.modules.volumerendering.logic()

scene = slicer.mrmlScene

volumeNode = slicer.mrmlScene.AddNewNodeByClass('vtkMRMLScalarVolumeNode', 'VolumeTest_1')

slicer.util.loadVolume('/home/danil/Документы/SlicerDICOMDatabase/DICOMwebLocal/7867c209a99ade387bac05b4999d78cd/1.3.6.1.4.1.5962.99.1.2786334768.1849416866.1385765836848.729.0.2TSE5512512.nrrd', {'name': 'VolumeTest_1'})

slicer.mrmlScene.AddNode(volumeNode)

displayNode = logic.CreateVolumeRenderingDisplayNode()
displayNode.UnRegister(logic)
slicer.mrmlScene.AddNode(displayNode)
volumeNode.AddAndObserveDisplayNodeID(displayNode.GetID())
logic.UpdateDisplayNodeFromVolumeNode(displayNode, volumeNode)

```

import slicer

logic = slicer.modules.volumerendering.logic()

scene = slicer.mrmlScene

volumeNode = slicer.mrmlScene.AddNewNodeByClass(‘vtkMRMLScalarVolumeNode’, ‘VolumeTest\_1’)

slicer.util.loadVolume(‘/home/danil/Документы/SlicerDICOMDatabase/DICOMwebLocal/7867c209a99ade387bac05b4999d78cd/1.3.6.1.4.1.5962.99.1.2786334768.1849416866.1385765836848.729.0.2TSE5512512.nrrd’, {‘name’: ‘VolumeTest\_1’})

slicer.mrmlScene.AddNode(volumeNode)

displayNode = logic.CreateVolumeRenderingDisplayNode()  
displayNode.UnRegister(logic)  
slicer.mrmlScene.AddNode(displayNode)  
volumeNode.AddAndObserveDisplayNodeID(displayNode.GetID())  
logic.UpdateDisplayNodeFromVolumeNode(displayNode, volumeNode)

```auto

```

---

<div class="post-metadata">

### Author: ![mazurkin](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mazurkin/32/66303_2.png) [@mazurkin](https://discourse.slicer.org/u/mazurkin)
#### Post date: [July 3, 2023, 7:30am UTC](https://discourse.slicer.org/t/3d-slicer-show-nrrd-file/30334/2 "2023-07-03T07:30:20Z")

</div>

Make with help VolumeNode from module “Data” with help [Volume rendering — 3D Slicer documentation](https://slicer.readthedocs.io/en/v4.11/developer_guide/modules/volumerendering.html)

---

<div class="post-metadata">

### Author: ![mazurkin.daniel](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mazurkin.daniel/32/66512_2.png) [@mazurkin.daniel](https://discourse.slicer.org/u/mazurkin.daniel)
#### Post date: [July 3, 2023, 8:24am UTC](https://discourse.slicer.org/t/3d-slicer-show-nrrd-file/30334/3 "2023-07-03T08:24:58Z")

</div>

Help this source code:

```auto
data_display = slicer.util.loadVolume('/home/danil/test_dicom/1.nrrd')
logic = slicer.modules.volumerendering.logic()
volumeNode = slicer.mrmlScene.GetNodeByID(data_display.GetID())
displayNode = logic.CreateVolumeRenderingDisplayNode()
displayNode.UnRegister(logic)
slicer.mrmlScene.AddNode(displayNode)
volumeNode.AddAndObserveDisplayNodeID(displayNode.GetID())
logic.UpdateDisplayNodeFromVolumeNode(displayNode, volumeNode)

```
