I noticed there’s a command line tool included with Panda for doing this to egg files.
Would be nice to have a function to do this to rigged meshes loaded in Panda. Also allowing to read bone map files (bone_from_char1_name -> bone_from_char2_name…) instead of assuming same names, and also skipping bones which are not present in both instead of requiring same bones and hierarchy would be very nice. I don’t remember which tool I’ve used worked this way, but was very helpful and required for writing a mocap viewer and animating dynamically created characters.
I’m also pretty sure for this kind of functions there’s a way to set percentage of rotation/scale which will be passed the target bone in the bone map file. If I recall correctly that was mainly used for porting facial animations where the eyes, etc. could have pretty different sizes.