Go to: Synopsis. Return value. Related. Flags. MEL examples.

Synopsis

pasteKey [-animLayer string] [-animation string] [-attribute string] [-clipboard string] [-connect boolean] [-copies uint] [-float floatrange] [-floatOffset float] [-includeUpperBound boolean] [-index uint] [-matchByName boolean] [-option string] [-time timerange] [-timeOffset time] [-valueOffset float] [objects]

pasteKey is undoable, queryable, and editable.

The pasteKey command pastes curve segment hierarchies from the clipboard onto other objects or curves. If the object hierarchy from which the curve segments were copied or cut does not match the object hierarchy being pasted to, pasteKey will paste as much as it can match in the hierarchy. If animation from only one object is on the clipboard, it will be pasted to each of the target objects. If animation from more than one object is on the clipboard, selection list order determines what animation is pasted to which object.

Valid operations include:

TbaseKeySetCmd.h

The way the keyset clipboard will be pasted to the specified object's attributes depends on the paste "-option" specified. Each of these options below will be explained using an example. For all the explanations, let us assume that there is a curve segment with 20 frames of animation on the keyset clipboard (you can put curve segments onto the clipboard using the cutKey or copyKey commands). We will call the animation curve that we are pasting to the target curve:

Return value

intThe number of curves pasted

In query mode, return type is based on queried flag.

Related

copyKey, cutKey, findKeyframe, keyTangent, keyframe, keyframeOutliner, keyframeStats, scaleKey, setInfinity, snapKey

Flags

animLayer, animation, attribute, clipboard, connect, copies, float, floatOffset, includeUpperBound, index, matchByName, option, time, timeOffset, valueOffset
Long name (short name) Argument types Properties
-animLayer(-al) string create
Specifies that the keys getting pasted should be pasted onto curves on the specified animation layer.If that layer doesn't exist for the specified objects or attributes then the keys won't get pasted.
-animation(-an) string create
Where this command should get the animation to act on. Valid values are "objects," "keys," and "keysOrObjects" Default: "keysOrObjects." (See Description for details.)
-attribute(-at) string createmultiuse
List of attributes to select

In query mode, this flag needs a value.

-clipboard(-cb) string create
Specifies the clipboard from which animation is pasted. Valid clipboards are "api" and "anim". The default clipboard is: anim
-connect(-c) boolean create
When true, connect the source curve with the destination curve's value at the paste time. (This has the effect of shifting the clipboard curve in value to connect with the destination curve.) False preserves the source curve's original keyframe values. Default is false.
-copies(-cp) uint create
The number of times to paste the source curve.
-float(-f) floatrange create
value uniquely representing a non-time-based key (or key range) on a time-based animCurve. Valid floatRange include single values (-f 10) or a string with a lower and upper bound, separated by a colon (-f "10:20")

In query mode, this flag needs a value.

-floatOffset(-fo) float create
How much to offset the pasted keys in time (for non-time-input animation curves).
-includeUpperBound(-iub) boolean create
When the -t/time or -f/float flags represent a range of keys, this flag determines whether the keys at the upper bound of the range are included in the keyset. Default value: true. This flag is only valid when the argument to the -t/time flag is a time range with a lower and upper bound. (When used with the "pasteKey" command, this flag refers only to the time range of the target curve that is replaced, when using options such as "replace," "fitReplace," or "scaleReplace." This flag has no effect on the curve pasted from the clipboard.)
-index(-in) uint create
index of a key on an animCurve

In query mode, this flag needs a value.

-matchByName(-mn) boolean create
When true, we will only paste onto items in the scene whose node and attribute names match up exactly with a corresponding item in the clipboard. No hierarchy information is used. Default is false, and in this case the usual matching by hierarchy occurs.
-option(-o) string create
Valid values are "insert", "replace", "replaceCompletely", "merge", "scaleInsert," "scaleReplace", "scaleMerge", "fitInsert", "fitReplace", and "fitMerge". The default paste option is: "insert".
-time(-t) timerange create
time uniquely representing a key (or key range) on a time-based animCurve. See the code examples below on how to format for a single frame or frame ranges.

In query mode, this flag needs a value.

-timeOffset(-to) time create
How much to offset the pasted keys in time (for time-input animation curves).
-valueOffset(-vo) float create
How much to offset the pasted keys in value.

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 be used more than once in a command.

MEL examples

// Paste keyframes onto nurbsSphere1's translateX attribute at time 10
//
pasteKey -time 10 -attribute translateX nurbsSphere1;

// Paste to all active objects, preserving the timing from the clipboard.
//
pasteKey;