Hi, devs. I'm working with a rigging model, and in some cases I have to scale it which will make the scale value not be 1 (Figure 1). And every child object's real scale value is changed.
Then I'm using Reset Scale( c4d. CallCommand(12317) )(Figure 2)
to solve this problem, but it can only solve them one by one selected.
Then I wrote a Python script to see if this would be applied by one click.
SelectedObjs = doc.GetActiveObjects(1)
cnt = len(SelectedObjs)
print SelectedObjs # to check whether objs can be read
for obj in SelectedObjs:
print obj # to check whether each obj can be read
And it turned out that objects could be read indeed, but Reset Scale just didn't make effects to children objects.
Is there anyway can solve this Reset Scale problem? I didn't use freeze scale because I worried about errors happenning in interactions with like Xparticle, dynamics, simulations stuffs.
thank you for reaching out to us. Unfortunately I am a bit slow again this morning, so I have trouble understanding your posting.
What confuses me the most is that the selected object in your screen is not in a child-parent relation and also the fact that scaling a parent will not change the relative transform of its children, i.e. their local matrix, i.e. what you are seeing the coordinates tab of the attribute manager.
Sorry for all the confusion, but we would apricate it if you would clarify some points.