I almost always forget to do the ctrl+a scale&rotation. So, I don't know if I have really jacked up my scene :(

I was wondering if I could tie a python script to the actions of scaling/rotating an object. Such as when I'm done scaling or rotating an object the python script applies it in the background for me.

  • 2
    $\begingroup$ I doubt that it is useful for you to be so concerned about your topic. Non unit scale and non zero rotation exists because they are useful. You might consider making changes in EDIT mode. There are some circumstances where applying rotation and scaling are important. I cannot provide the complete list and that is acceptable. When you have a concrete problem please show your particular work as a screen capture and others will help you. I would encourage you to see a tutorial series. Observe that while you need to be careful ..... non unit scale and non zero rotation are quite common. $\endgroup$ Jan 2, 2019 at 23:48
  • 1
    $\begingroup$ I do not apply scale and rotation all the time. There is also the delta scale and delta rotation. $\endgroup$ Jan 2, 2019 at 23:52
  • $\begingroup$ Ahh okay. That was all very informative. I do check out tutorials and enjoy watching them. I'll keep an eye on that. I thought that was just universally needed, but I guess not :) . Thank you for your time and information! $\endgroup$
    – Ryan
    Jan 3, 2019 at 1:19

1 Answer 1


you could use a python script that runs through all your objects and checks if their scale is 1,1,1 and rotation is 0°,0°,0°. if not it applies rotation&scale

import bpy

for obj in  bpy.context.scene.objects:
    if obj.scale!=[1,1,1] or obj.rotation_euler!=[0,0,0] :
        bpy.ops.object.transform_apply(location=False, rotation=True, scale=True)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .