# Reduce the radius of cylindrical object linearly towards the top

I have an object that I have built using wall-factory ( a built-in addon). I have made it look cylindrical using the simple deform modifier (set to bend). Now, I would like to know how I can reduce the radius linearly towards the top using modifiers. I have tried using lattice deform but it didn't work well. I would also like to have some kind of control over it like using an empty or some other object.

• You can do it with a simple deform modifier set to taper, but the bricks will appear more and more squished the higher up you go. It may be the problem you encountered with the lattice modifier ? Jun 7, 2021 at 14:19
• @Gorgious that seems to work. You can add that as an answer
– Art
Jun 7, 2021 at 14:22

First method, using a Lattice and Lattice modifier.

Notes :

• Set the interpolation to Linear in the lattice properties.
• Scale the Lattice in Object mode so it encompasses the wall object.
• Go into Edit mode, and scale the top 4 vertices along the XY plane.

Second method, with a Simple deform modifier. Use a negative value to taper "down" your object.

I added an empty at world origin so the taper is centered, and used it as the modifier origin. Third method, Geometry Nodes (V2.93+): Basic steps of the modifier :

1. Add a GN modifier to the object.
2. Add a Transform Node to recenter the object (might not be needed if you changed the origin).
3. Add an Attribute Separate XYZ Node to retrieve the X, Y, and Z components of each vertex' position.
4. Add an Attribute Math node to downscale the Z attribute which we will use to taper the object.
5. Add an Attribute Combine XYZ node to combine the X and Y components which we will use to taper the object.
6. Use an Attribute Mix node set to subtract the X and Y components to the vertex' position, using the Z position as a factor.
7. Use a math node to downscale the Z factor before it is applied
8. Plug a new input into the math node.

Result : 