变更parent后引起位置和scale的变化如何解决?

使用代码变更parent后,postion和scale的数值似乎没有跟着同步变化,导致变更transform的parent后,需要重新去手动计算新的position和parent。
position可以通过convertToWorldSpace来获得世界坐标,然后转化为新的parent的局部坐标.

scale没有找到一个相对世界的scale,只能获得相对父一级的scale,如果父一级上面还有scale,并且scale!=1,那么是只能一层层找上去,来计算获得一个世界的scale?然后再根据新的父级一层层计算下来吗?似乎这样很繁琐,有没有合适的api?
新手,还请各位指导。

关注。还有旋转的值的计算

得看下源码了