# Copy model display node

**URL:** <https://discourse.slicer.org/t/copy-model-display-node/4355>\
**Category:** Development\
**Tags:** extensions-manager\
**Created:** [October 11, 2018, 8:28am UTC](https://discourse.slicer.org/t/copy-model-display-node/4355 "2018-10-11T08:28:48Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Niels](https://avatars.discourse-cdn.com/v4/letter/n/ebca7d/32.png) [@Niels](https://discourse.slicer.org/u/Niels)\
**Post date:** [October 11, 2018, 8:28am UTC](https://discourse.slicer.org/t/copy-model-display-node/4355/1 "2018-10-11T08:28:48Z")

</div>

I have a generated a new model derived from a source model. I want the new display properties (including selected scalars) of the target model to be the same as the source model. I tried various Copy functions with no success.

```
modelDisplayNode = modelNode.GetDisplayNode()
    
newModel1 = slicer.vtkMRMLModelNode()
newModel1.SetAndObservePolyData(surfaceFilter1.GetOutput())

newDisplayNode1 = slicer.vtkMRMLModelDisplayNode()
newDisplayNode1.CopyWithScene(modelDisplayNode)
slicer.mrmlScene.AddNode(newDisplayNode1)
    
newModel1.SetAndObserveDisplayNodeID(newDisplayNode1.GetID())
slicer.mrmlScene.AddNode(newModel1)
```

---

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [October 11, 2018, 12:52pm UTC](https://discourse.slicer.org/t/copy-model-display-node/4355/2 "2018-10-11T12:52:16Z")

</div>

Simple `Copy` of the display node should work:

```
newModel1 = slicer.mrmlScene.AddNewNodeByClass('vtkMRMLModelNode')
newModel1.SetAndObservePolyData(surfaceFilter1.GetOutput()))
newModel1.CreateDefaultDisplayNodes()
newModel1.GetDisplayNode().Copy(modelNode.GetDisplayNode())

```

A more generic option is to use Subject Hierarchy module’s clone function, which can clone any node. See this [example](https://www.slicer.org/wiki/Documentation/Nightly/ScriptRepository#Clone_a_node).
