Automate Dental Splint Generation using MarkerToModel Module

Hello,

I am using Fiducials and the MarkupToModel module to generate an orthognathic splint from the position of the upper and lower dental landmarks in both the intermediate and final occlusions. I am getting pretty good results and would like to explore automating the process through Python scripting.

Currently, I start by combining upper and lower dental landmarks in a single Fiducial List;


Figure: Dental landmarks in green, only the lower teeth are shown

Using the Fiducial List as an Input to the MarkupToModel module, I create a “tube” using the parameters shown on the screenshot below.

Is there a way to interact with the MarkupToModel module programmatically using Python? I briefly scanned the GitHub repo. and only found C++ code… Essentially, I just want to apply the parameters to every case.

I did not know how to interact with loadable modules until I found this post.
To replicate the parameters above, I just need to use the logic;

logic = slicer.modules.markerstomodel.logic()
logic.UpdateOutputCurveModel(fidNode,modelNode,3,False,4,8,5,True,1,1,slicer.vtkCurveGenerator(),1,0.5,3)

3 Likes