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 |
name(n) |
string |
|
|
Sets the name of the constraint node to the specified name.
Default name is constrainedObjectName_constraintType |
|
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. |
|
remove(rm) |
boolean |
|
|
removes the listed target(s) from the constraint. |
|
targetList(tl) |
boolean |
|
|
Return the list of target objects. |
|
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 |
|
layer(l) |
string |
|
|
Specify the name of the animation layer where the constraint
should be added. |
|
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. |
|
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. |
|
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. |
|
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". |
|
offset(o) |
[float, float, float] |
|
|
Sets or queries the value of the offset. Default is 0,0,0. |
|
maintainOffset(mo) |
boolean |
|
|
The offset necessary to preserve the constrained object's
initial rotation will be calculated and used as the offset. |
|
skip(sk) |
string |
|
|
Specify the axis to be skipped. Valid values are "x", "y", "z"
and "none". During creation, "none" is the default. |
|
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"] )