# How do I apply delta transforms to normal transform?

How do I apply the delta transforms of a couple hundred objects (in a collection, if it helps) to normal transform? I can't even find an option to clear delta transforms.

There's the Object -> Apply -> Location to Deltas, option, but no equivalent to go in reverse!?

• I struggled to find a solution as well, what worked for me was joining with some other object that has 0 deltas and separating it back. But I am still trying to figure out something more usable, especially for multiple objects. – Jan Kadeřábek Jul 19 '19 at 22:44

I ran into the same issue and used Bintang Senja solution. I also used for rotation and scale, maybe the code can help someone else:

import bpy
for obj in bpy.context.selected_objects:
# Store delta location, Eurler rotation and scale of selected objects
obj_deltaL = obj.delta_location
obj_deltaR = obj.delta_rotation_euler
obj_deltaS = obj.delta_scale

# Assign selected objects location, Euler rotation and scale as delta location, Eurler rotation and scale, Reset delta location and Euler rotation to 0 and scale to 1
obj.location = obj_deltaL
obj.delta_location = (0,0,0)
obj.rotation_euler = obj_deltaR
obj.delta_rotation_euler = (0,0,0)
obj.scale = obj_deltaS
obj.delta_scale = (1,1,1)


Please don't juge the code, I know it's crappy. I just wanted a quick and easy solution. It works fine :)

I don't know if there is a button for it, but you can try to use python from script editor. If you have object selected and want to transfer delta location to normal location and also reset the delta you can try this :

import bpy

for obj in bpy.context.selected_objects:
# Store delta location of object
obj_delta = obj.delta_location

# Assign object location as delta location and Reset delta location to 0
obj.location = obj_delta
obj.delta_location = (0,0,0)