Go to: Synopsis. Return value. Related. Flags. Python examples.
aimConstraint(
[target...] object
, [aimVector=[float, float, float]], [layer=string], [maintainOffset=boolean], [name=string], [offset=[float, float, float]], [remove=boolean], [skip=string], [targetList=boolean], [upVector=[float, float, float]], [weight=float], [weightAliasList=boolean], [worldUpObject=name], [worldUpType=string], [worldUpVector=[float, float, float]])
Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.
aimConstraint is undoable, queryable, and editable.
Constrain an object's orientation to point at a target object or
at the average position of a number of targets.
An aimConstraint takes as input one or more "target" DAG transform
nodes at which to aim the single "constraint object" DAG transform
node. The aimConstraint orients the constrained object such that
the aimVector (in the object's local coordinate system) points to
the in weighted average of the world space position target
objects. The upVector (again the the object's local coordinate
system) is aligned in world space with the worldUpVector.
string[] | name of the created constraint node |
In query mode, return type is based on queried flag.
geometryConstraint, normalConstraint, orientConstraint, parentConstraint, pointConstraint, poleVectorConstraint, scaleConstraint, tangentConstraint
aimVector, layer, maintainOffset, name, offset, remove, skip, targetList, upVector, weight, weightAliasList, worldUpObject, worldUpType, worldUpVector
Long name (short name) |
Argument types |
Properties |
|
aimVector(aim)
|
[float, float, float]
|
|
|
Set the aim vector. This is the vector in local
coordinates that points at the target. If not given at creation
time, the default value of (1.0, 0.0, 0.0) is used.
|
|
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 rotation 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". During creation, "none" is the default.
|
|
targetList(tl)
|
boolean
|
|
|
Return the list of target objects.
|
|
upVector(u)
|
[float, float, float]
|
|
|
Set local up vector. This is the vector in local
coordinates that aligns with the world up vector. If not given
at creation time, the default value of (0.0, 1.0, 0.0) is used.
|
|
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
|
|
worldUpObject(wuo)
|
name
|
|
|
Set the DAG object use for worldUpType "object" and
"objectrotation". See worldUpType for greater detail.
The default value is no up object, which is interpreted
as world space.
|
|
worldUpType(wut)
|
string
|
|
|
Set the type of the world up vector computation.
The worldUpType can have one of 5 values: "scene",
"object", "objectrotation", "vector", or "none".
If the value is "scene", the upVector is
aligned with the up axis of the scene and
worldUpVector and worldUpObject are ignored.
If the value is "object", the upVector is
aimed as closely as possible to the
origin of the space of the worldUpObject and
the worldUpVector is ignored.
If the value is "objectrotation" then the
worldUpVector is interpreted as being in
the coordinate space of the worldUpObject, transformed into
world space and the upVector is aligned as
closely as possible to the result.
If the value is "vector", the upVector
is aligned with worldUpVector as closely as
possible and worldUpMatrix is ignored.
Finally, if the value is "none" no twist calculation
is performed by the constraint, with the resulting "upVector"
orientation based previous orientation of the
constrained object, and the "great circle" rotation needed
to align the aim vector with its constraint.
The default worldUpType is "vector".
|
|
worldUpVector(wu)
|
[float, float, float]
|
|
|
Set world up vector. This is the vector in world
coordinates that up vector should align with.
See -wut/worldUpType (below)for greater detail.
If not given at creation time, the default
value of (0.0, 1.0, 0.0) is used.
|
|
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 the aim vector of cube1 in it's local coordinate space, to point at cone1.
cmds.aimConstraint( 'cone1', 'cube1' )
# Aims cube2 at the average of the position of cone1 and surf2
cmds.aimConstraint( 'cone1', 'surf2', 'cube2', w=.1 )
# Sets the weight for cone1's effect on cube2 to 10.
cmds.aimConstraint( 'cone1', 'cube2', e=True, w=10.0 )
# Removes surf2 from cube2's aimConstraint.
cmds.aimConstraint( 'surf2', 'cube2', e=True, rm=True )
# Adds surf3 to cube2's aimConstraint with the default weight.
cmds.aimConstraint( 'surf3', 'cube2' )
# Aim constrain the z-axis only of sph2 to sph1
cmds.aimConstraint( 'sph1', 'sph2', skip=["x","y"] )