How to create a composite transform

In my scripted module, up until now I have been using transform concatenation by applying a parent transform to another and then to a model. However, I would like to merge both transforms in a more permanent way and after some research, I saw that Slicer supports composite transforms, but I couldn’t find an example of this, even through the UI.
Thanks for any help !

You can create composite transform by hardening a transform on another.

Indeed, but apparently this does not work for a transform that changes constantly like one streamed from openIGTlink for example. If the streamed transform is the parent, it hardens the child transform given the values at the exact moment of the hardening. If it’s reverse, the hardening does not hold since the child transform is constantly updated.

Yes, this is how it works. Hardening would not make sense for constantly changing transforms. You probably want to combine transforms (compute an output transform by combining input transforms) using “Combine transforms” module in SlicerIGT extension.

All right, thanks for clarifying !