# DeformableCurve

## Class DeformableCurve()

DeformableCurve(parent='MODEL', name='DeformableCurve_n', label='DeformableCurve_n',
active=True, itype='MARKER', markers=None, bodies=None, points=None, end_type_left='NATURAL',
end_type_right='NATURAL', lambda_left=0, lambda_right=0, uspan=0)

Three dimensional deformable curve.

## Keyword Arguments

Argument Data Type Description Default
name String The variable name. DeformableCurve_n, for next available integer n.
label String The descriptive label. DeformableCurve_n, for next available integer n.
parent Object The parent. MODEL
active Boolean Used to activate or deactivate this entity. True
itype Enum The type of deformable curve. One of BODYPT or MARKER. MARKER
markers Marker The ordered list of markers that form the curve in 3D space when itype is MARKER. None
bodies Body The ordered list of bodies that form the curve in 3D space when itype is BODYPT. None
points Point The ordered list of points that form the curve in 3D space when itype is BODYPT. None
end_type_left Enum The type of end condition on left end. One of NATURAL, PARABOLIC, PERIODIC, CANTILEVER. NATURAL
end_type_right Enum The type of end condition on right end. One of NATURAL, PARABOLIC, PERIODIC, CANTILEVER. NATURAL
lambda_left Double The condition for the CUBIC spline interpolation at the left end. This is required only in the case of CANTILEVER curve end. 0
lambda_right Double The condition for the CUBIC spline interpolation at the right end. This is required only in the case of CANTILEVER curve end. 0
uspan Double The span of the curve. 0

## Notes

1. The parent parameter can only be initialized by the constructor and should not be modified directly.
2. Only parent can be used as a positional argument in the constructor.

## Examples

Create and modify attributes of a DeformableCurve.
>>> # Import mview module
>>> from hw import mview
>>> #Create a body and get values
>>> d1 = mview.DeformableCurve(name='defc_1',label='defc_1')
>>> d1.end_type_left
'NATURAL'
>>> d1.end_type_right
'NATURAL'
>>> d1.markers[0].name
'Global_Frame'
>>> m1= mview.Marker(name='m_1')
>>> m1.name
'm_1'
>>> gb = mview.getModel().Global_Frame
>>> d1.markers = [gb, m1, m1]
>>> d1.itype = 'BODYPT'
>>> d1.bodies[0].name
'B_Ground'
>>> d1.points[0].name
'P_Global_Origin'