Simple Deform

Description

This modifier allows to easily apply some simple deform function to objects (meshes and curves are supported).

The functions supported so far are:

• Twist - rotates arround the Z axis
• Bend - bends the mesh over the Z axis
• Taper - linear scales along Z axis
• Stretch - stretchs the mesh along the Z axis (negative factor leads to squash)

The deform functions are applied to the vertexes (in meshes) or to control points (in case of curves or surfaces), so its a good idea to apply a subsurface modifier to get a better detail on the deform effect. The amount of deformation can also be controlled using vertex groups. Its possible to define the axis and origin of the deformation allowing to apply very diferent effects.

Options

• Type - deform type (supported: twist,bend,taper,stretch)
• VGroup - name of the vertex group that indicates how much each vertex is influenced by the deformation
• Ob - object that defines the origin of deformation (usually an empty). This object can be:
• rotated to control axis
• translated to control the origin of deformation
• scaled to change the deform factor
• Factor - amount of deformation
• Upper and Lower limit - allows to limit the part of the mesh that is affected by the deformation.
• Lock X/Y (only available on taper and stretch) - controls whether the X and/or Y coordinate are allowed to change or not. Thus is possible to squash the X coordinates of an object and kept the Y coordinate intact.

fix a strange thing (Due to cyclic dependency.. since the empty is created attached to the object and when the mesh is moved arround its position is calculated with the old empty position instead of the new one)

Notes

• If the object controlling the origin is a child of the deformed object creates a cyclic dependency on DAG. (since DAG isn't prepared for this). The work arround is to create an empty and attach both objects to it.
• TODO UI should be improved specially with manipulators to control the origin, axis limits.. etc.. (doable on 2.5 ?)