3D Segment Interaction

Is there a interactive tool for us to move the segments ? Like in 3D software so we can move our segments independently with the mouse pointer ?

segmentInteraction

to do this with the mouse without adjusting the sliders in the transform module ???

Yes, you can enable interaction at the transform level and it will apply to any model/segmentation/volume/etc inside that transform.

image

1 Like

Have you actually tried to align arbitrarily transformed objects with such tools? It is painful.

In general, I would not recommend this kind of visual alignment, as it is an inaccurate and time-consuming iterative process if you use 2D display or 2D input device. In contrast, landmark registration is fast, accurate, and non-iterative. There are several landmark registration modules for Slicer, but the most versatile is “Fiducial registration wizard” module in SlicerIGT extension. For slight alignment of images, you can use “Landmark Registration” module.

@pieper and @lassoan

Dear @pieper Transform tool allows the rotations but not forward/back/up/down movements interactively. (I mean with the mouse pointer). Yes it does allow to move forward/back/up/down with the sliders and rotate the segments with the mouse pointer. I am wondering is it possible to do forward/back/up/down movements for surgical simulations with this ?

@lassoan This is not for registrations of the segments. Our registration problem is now sorted with the CMF ROI registration option but the problem i described in the development segment still persist with that in our machine. ( CMFReg - ROI registration Bug )

I want to segment the maxilla and move it in relation to the rest of the segments.
Like this

You could create a transform tree to define translation axes and then use sliders to move pieces along those axes. You can put all the necessary sliders on a Python scripted module’s GUI, so you don’t need to switch between transforms and can have customized labels for the sliders.

It could be similar to RoomsEyeView module - @cpinter can you send a link to a demo video to show how you can move pieces of a model using Transforms?

1 Like

Thank you so much i will try that and get back if i run in to problems. Meanwhile having demo video would be super helpful if available.

There is no tutorial video showing how to create an adequate transform chain to achieve a specific movement path of objects. There is a demo video, but it only shows how to use the module that uses the transform chain:
https://1drv.ms/v/s!Ao_a-dPPX98Zg5FhNPEUvyRq4uXAKw

To use the module:

  1. Install the SlicerRT exension
  2. Go to the Room’s Eye View module
  3. Click Load treatment machine models

Unfortunately this also won’t bring you much closer to seeing the actual transform chain, because the transforms are hidden so that they don’t clog the Data module.

To show the nodes you’ll need to paste this in the python interactor:

transformNodes = getNodes('vtkMRMLLinearTransformNode*')
for node in list(transformNodes.values()):
  node.SetHideFromEditors(False)

The most complex movement belongs to the imaging panel. It had to be driven from code. To see how that movement is created, refer to the source:

1 Like

Thanks. It is not exactly how i want to do it but this will become useful to me too. What I really wanted to do was to manipulate the segment/s like here,

but not using the Navigation instruments but by using the mouse pointer like in a 3D modelling program.

But his information was super useful for me as well.