Go to: Synopsis. Flags. Return value. Python examples.
hardenPointCurve(
[curveName]
, [constructionHistory=boolean], [curveOnSurface=boolean], [index=int], [multiplicity=int], [name=string], [object=boolean], [polygon=int], [range=boolean], [rebuild=boolean], [replaceOriginal=boolean])
Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.
hardenPointCurve is undoable, queryable, and editable.
The hardenPointCurve command changes the knots of a curve given a list
of control point indices so that the knot corresponding to that
control point gets the specified multiplicity. Multiplicity of -1 is
the universal value used for multiplicity equal to the degree of
the curve.
limitations
The CV whose multiplicity is being raised needs to have its
neighbouring CVs of multiplicity 1. How many neighbours depends on
the degree of the curve and the difference in CV multiplicities before
and after this operation. For example, if you're changing a CV of
multiplicity 1 into a CV of multiplicity 3, you will need the 4
neighbouring CVs (2 on each side) to be of multiplicity 1. The CVs
that do not satisfy that requirement will be ignored.
constructionHistory, curveOnSurface, index, multiplicity, name, object, polygon, range, rebuild, replaceOriginal
Flag can appear in Create mode of command
|
Flag can appear in Edit mode of command
|
Flag can appear in Query mode of command
|
Flag can have multiple arguments, passed either as a tuple or a list.
|
[string[]] (object name and node name)
import maya.cmds as cmds
# Make the example curve.
cmds.curve( d=3, p=((-7.253894, 0, 10.835724), (-7.423939, 0, 6.977646), (-7.400778, 0, 2.798971), (-7.458196, 0, -1.524959), (-2.411453, 0, -1.07677), (1.44791, 0, -0.8977448), (5.526346, 0, -0.8610371), (5.740407, 0, 3.780402), (6.293634, 0, 7.571941), (5.957847, 0, 10.72273), (2.753946, 0, 10.894312), (-0.6375988, 0, 11.062571), (-5.889847, 0, 10.940658)), k=(0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10) )
# Raise the ones that you want to have "sharp" corners
cmds.hardenPointCurve( 'curve1.cv[3]', 'curve1.cv[6]', 'curve1.cv[9]', ch=True, rpo=True, m=-1 )
# Same result, as the in-between CVs are ignored:
cmds.undo()
cmds.hardenPointCurve( 'curve1.cv[0:12]', ch=1, rpo=1, m=-1 )
Return to Autodesk Index