84 lines
2.6 KiB

.. index:: Modeling Modifiers; Curve Modifier
.. _bpy.types.CurveModifier:
Curve Modifier
The *Curve* modifier provides a simple but efficient method of deforming a mesh along a curve object.
It works on a (global) dominant axis, X, Y, or Z.
This means that when you move your mesh in the dominant direction (by default, the X axis),
the mesh will traverse along the curve, as if it was a train following and deforming along rails.
Moving the mesh perpendicularly to this axis, the object will move closer or further away from the curve.
When you move the object beyond the curve's ends, the object will continue
to deform based on the direction vector at those ends.
.. note::
This modifier works in global space, in other words, the actual position of the geometry
relative to the curve is determinant to get a correct result.
Typically, you'll want your object's origin to be at the center of your geometry (not offset far away from it,
you can e.g. :ref:`Set Origin to Geometry <bpy.ops.object.origin_set>`).
And then you'll want to start with your object's origin at the same location as your curve object's origin
(you may use :ref:`snap tools <bpy.ops.view3d.snap>` for that...).
If the curve is 3D, the *Tilt* value of its control points will be used to twist the deformed object.
And the *Radius* property controls the size of the object as well.
Those options are in the *Shape* panel, under :ref:`Path/Curve-Deform <curve-shape-path-curve-deform>`.
.. _fig-modifier-curve-panel:
.. figure:: /images/modeling_modifiers_deform_curve_panel.png
:align: right
:width: 300px
The Curve modifier.
Curve Object
The name of the curve object that will affect the deformed object.
Deformation Axis
This is the axis that the curve deforms along.
Vertex Group
If set, restrict the effect to the only vertices in that vertex group.
Invert ``<->``
Inverts the influence of the selected vertex group, meaning that the group
now represents vertices that will not be deformed by the modifier.
The setting reverses the weight values of the group.
.. list-table::
* - .. _fig-modifier-curve-edit:
.. figure:: /images/modeling_modifiers_deform_curve_example-edit-curve.png
:width: 300px
Edit curve.
- .. figure:: /images/modeling_modifiers_deform_curve_example-monkeyoncurve1.png
:width: 300px
Monkey on a curve.
- .. figure:: /images/modeling_modifiers_deform_curve_example-monkeyoncurve2.png
:width: 300px
Monkey deformations.