Created
July 21, 2017 01:17
-
-
Save ungi/c1c448fa51cc458d3da75f5e5c73c74c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Show the distance between models as colors | |
# Create two models | |
createModelsLogic = slicer.modules.createmodels.logic() | |
cubeNode = createModelsLogic.CreateCube(150, 150, 150) | |
sphereNode = createModelsLogic.CreateSphere(100) | |
# Hide original models, so only the output will be visible | |
cubeNode.SetDisplayVisibility(False) | |
sphereNode.SetDisplayVisibility(False) | |
# Create a filter that computes distances and stores them in PolyData scalars | |
distanceFilter = vtk.vtkDistancePolyDataFilter() | |
distanceFilter.SetInputData(0, sphereNode.GetPolyData()) | |
distanceFilter.SetInputData(1, cubeNode.GetPolyData()) | |
distanceFilter.SignedDistanceOff() | |
distanceFilter.Update() | |
# Crete a model node for the output PolyData | |
model = slicer.vtkMRMLModelNode() | |
slicer.mrmlScene.AddNode( model ) | |
model.SetName('DistanceModelNode') | |
model.SetAndObservePolyData( distanceFilter.GetOutput() ) | |
display = slicer.vtkMRMLModelDisplayNode() | |
slicer.mrmlScene.AddNode( display ) | |
model.SetAndObserveDisplayNodeID( display.GetID() ) | |
display.SetActiveScalarName('Distance') | |
display.SetAndObserveColorNodeID('vtkMRMLColorTableNodeFileColdToHotRainbow.txt') | |
display.SetScalarVisibility(True) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment