Bending 3D model

I was wondering if I could use one of Slicer’s extension to bend a 3D model?
Essentially I would like to contour a stabilising plate to the bone model ahead of surgery. I saw that there is an osteotomy planner module somewhere that allow bone bending but for some reason it does not show up on my extension manager. If that extension is still available, could it be used to bend a model of a plate using it?

You can warp a model by applying a thin-plate spline transform and specifying corresponding point pairs using Fiducial Registration Wizard module (provided by SlicerIGT extension).

However, if you want to create a perfectly fitting “bone plate” directly from your CT then it is easier to create it directly, using Segment Editor:

  • segment the bone
  • use Hollow effect to create a shell covering the bone
  • use Scissors effect to cut to the desired shape
  • keep the side you want to keep using Islands effect (Keep selected island)
  • you can drill holes into the plate using Scissors effect, with circle shape option

@lassoan. how can I create a new thin-plate spline transform in Slicer? I´ve triyed to do throw Python Interactor (defTransform = slicer.vtkThinPlateSplineTransform) but I can not see it on Slicer.
Thanks on advance!

1 Like

You need to put VTK transform object into a vtkMRMLTransformNode as ToParent or FromParent transform if you want it to appear in the scene.

You can use Fiducial registration wizard module’s logic from Python to do this and synchronize the landmarks in the transform with markups fiducial nodes.

1 Like

I can´t understand you…

I did:

T = slicer.mrmlScene.GetFirstNodeByName(‘Transform’)

In Fiducial Registration Wizard:


Before Wizard:


I don´t know what I´m doing wrong…

Discussion in this topic should explain how to use FiducialRegistrationWizard module from Python: Fiducial registration Wizard - custom transformation configuration