Rotating parts of a flattenModel

Looks like a follow-up of this problem.
All of my ships were modelled with the wrong coordinate system or let’s say they should be turned 180 dg around. I thought just by changing { Y-Up } in the EGG files to { Y-Down } or whatever would help. To right now I rotate them on their first loading by 180 dg and then do a flattenLight().

Now, some models have a rotating part, like a satellite dish. That part is its own model, reparented to the main part of the ship. The part then spins around forever. Right now this works beautifully, except that when the ship rotates the positional transforms are not correctly applied to the rotating child node. This doesnt matter when the child node is positioned at (0,0,0) but it matters elseway.

The main problem (as far as I understand it) is in which order to do what: rotate main node; setting the child node position; reparenting; flattening.

Right now I do:

  1. load model, 2) rotate, 3) flatten main node; 4) reparent child node.

I have tried different orders to no avail. Is it at all possible?

Why don’t you simply rotate the models in a modelling app? It would be the easiest by far and you won’t have to fear problems in the future