I want all my objects to have the same dimensions on z-axis, e.g. 2 metre. But I want them to keep their transform (keep the proportions). How can I add the same dimensions on z-axis to several objects at once?
I don’t know if there’s a shortcut… and I’m assuming you want to preserve width to height to depth ratios.
What I usually do is:
- size a cube to the height I want,
- move the origin to the base of the cube
- translate the cube to the world origin.
This give me something visual to compare to as I resize the other objects.
- make sure the object(s) you resize all have their origins at their base,
- move the object(s) to the world origin,
- change the pivot point to the 3D cursor.
You should now be able to resize any number of objects to be the same height using the cube as a visual reference. Zoom in really closely on the top of the object and cube to get more accurate sizing if you need it.
It’s not exactly elegant, but it’ll do the job until a better method comes along.
PS: If you resize in Edit Mode, you won’t have to apply transforms later.
If you need to do this for many objects, you can use a geometry nodes setup:
object_rescaling.blend (133.8 KB)
If it’s a straight forward Z scale, make on object the correct Z height, and set the cursor at the top most face. Make the pivot point the 3D cursor. Select all objects and go to edit mode. Select all of the top most faces (for higher geometry turn on linear proportional editing) and scale Z 0.
do you know a way to do it for multiple objects at once?
I was pretty sure it would work with multiple objects, but apparently ScalaZ just adds the values.
Anyway, I have a much better solution for you.
My method will work with multiple objects. In object mode just shift select them all, then go to edit mode and they will all be in edit mode where you can apply the change en-masse.