Go to: Synopsis. Return value. Related. Flags. Python examples.
orientConstraint(
[target ...] [object]
, [createCache=[float, float]], [deleteCache=boolean], [layer=string], [maintainOffset=boolean], [name=string], [offset=[float, float, float]], [remove=boolean], [skip=string], [targetList=boolean], [weight=float], [weightAliasList=boolean])
Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.
orientConstraint is undoable, queryable, and editable.
Constrain an object's orientation to match the orientation of the
target or the average of a number of targets.
An orientConstraint takes as input one or more "target" DAG transform
nodes to control the orientation of the single "constraint object"
DAG transform The orientConstraint orients the constrained object
to match the weighted average of the target world space orientations.
string | [] ( name of the created constraint node) |
In query mode, return type is based on queried flag.
aimConstraint, geometryConstraint, normalConstraint, parentConstraint, pointConstraint, poleVectorConstraint, scaleConstraint, tangentConstraint
createCache, deleteCache, layer, maintainOffset, name, offset, remove, skip, targetList, weight, weightAliasList
Long name (short name) |
Argument types |
Properties |
|
createCache(cc)
|
[float, float]
|
|
|
This flag is used to generate an animation curve that serves as a cache for
the constraint. The two arguments define the start and end frames.
The cache is useful if the constraint has multiple targets and
the constraint's interpolation type is set to "no flip". The "no flip"
mode prevents flipping during playback, but the result is dependent on
the previous frame. Therefore in order to consistently get the same
result on a specific frame, a cache must be generated. This flag
creates the cache and sets the constraint's interpolation type to
"cache". If a cache exists already, it will be deleted and replaced
with a new cache.
|
|
deleteCache(dc)
|
boolean
|
|
|
Delete an existing interpolation cache.
|
|
layer(l)
|
string
|
|
|
Specify the name of the animation layer where the constraint should be added.
|
|
maintainOffset(mo)
|
boolean
|
|
|
The offset necessary to preserve the constrained
object's initial orientation will be calculated and used as the
offset.
|
|
name(n)
|
string
|
|
|
Sets the name of the constraint node to the specified
name. Default name is constrainedObjectName_constraintType
|
|
offset(o)
|
[float, float, float]
|
|
|
Sets or queries the value of the offset. Default is 0,0,0.
|
|
remove(rm)
|
boolean
|
|
|
removes the listed target(s) from the constraint.
|
|
skip(sk)
|
string
|
|
|
Specify the axis to be skipped. Valid values are "x", "y", "z" and "none". The default value in create mode is "none". This flag is multi-use.
|
|
targetList(tl)
|
boolean
|
|
|
Return the list of target objects.
|
|
weight(w)
|
float
|
|
|
Sets the weight value for the specified target(s).
If not given at creation time, the default value of 1.0 is used.
|
|
weightAliasList(wal)
|
boolean
|
|
|
Returns the names of the attributes that control the weight
of the target objects. Aliases are returned in the same order
as the targets are returned by the targetList flag
|
|
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.
|
import maya.cmds as cmds
# Orients cube1 to match cone1.
cmds.orientConstraint( 'cone1', 'cube1' )
# Uses the average of the orientations of cone1 and surf2.
cmds.orientConstraint( 'cone1', 'surf2', 'cube2', w=.1 )
# Sets the weight for cone1's effect on cube2 to 10.
cmds.orientConstraint( 'cone1', 'cube2', e=True, w=10. )
# Removes surf2 from cube2's orientConstraint
cmds.orientConstraint( 'surf2', 'cube2', e=True, rm=True )
# Adds surf3 to cube2's orientConstraint with the default weight
cmds.orientConstraint( 'surf3', 'cube2' )
# Constrain the y and z rotation of sph2 to sph1
cmds.orientConstraint( 'sph1', 'sph2', skip="x" )
# Modify the constraint so that it constrains all axes of sph2
cmds.orientConstraint( 'sph1', 'sph2', e=True, skip="none" )
# Create a cache for the orient constraint controlling cube2
cmds.orientConstraint( 'cube2', e=True, cc=(1, 1000) )