CLI modules ignore parent transform

It seems confusing that CLI modules ignore the parent transform and users need to harden the transform to get the results that they expect. See this discussion for a recent example:

  • Does anyone know the reason why CLI modules are implemented like this?
  • Should we transform to/from RAS space before sending a node to a CLI module and convert outputs from RAS to the node’s parent transform’s space?
  • Or should we at least display a warning when a node under a transform is used as CLI module input or output?

@pieper @jcfr @cpinter @jamesobutler

As I recall transforms were being added and improved around the same time CLIs were being developed and I think this feature just never got implemented. It would definitely be nice to handle this automatically at the CLI GUI/logic layer by assuming that CLIs expect all their inputs to be in the same space (RAS).

We could do this by extending the node combo box to have a method like currrentNodeInWorldSpace that would do the clone/harden step if needed. If a transformable node has a nonlinear transform parent, then the combo box could have a submenu that selects a reference volume to define the desired resampling (and maybe the option not to delete the clone volume in case you want to reuse it).

1 Like