Public Types | Public Member Functions | Static Public Member Functions

MAnimControl Class Reference

Search for all occurrences

Detailed Description

Control over animation playback and values.

This class provide access to the values that control how an animation is played. This includes the minimum and maximum frames included in the playback, whether the playback loops, and whether the animation runs in all views, or only the active view, etc.

Methods also exist that mirror the functionality of the controls found on the time slider in the UI to start and stop the playback.

#include <MAnimControl.h>

List of all members.

Public Types

enum  PlaybackMode { kPlaybackOnce, kPlaybackLoop, kPlaybackOscillate }
 

Animation playback modes.

More...
enum  PlaybackViewMode { kPlaybackViewAll, kPlaybackViewActive }
 

Animation playback viewing modes.

More...

Public Member Functions

 MAnimControl ()
 Class constructor.
virtual ~MAnimControl ()
 Class destructor.

Static Public Member Functions

static MAnimControl::PlaybackMode playbackMode ()
 Return the playback mode currently in effect.
static MStatus setPlaybackMode (PlaybackMode newMode)
 Set the current playback mode.
static
MAnimControl::PlaybackViewMode 
viewMode ()
 Return the viewing mode currently in effect.
static MStatus setViewMode (PlaybackViewMode newMode)
 Set the current viewing mode.
static double playbackBy ()
 Return a double specifying the increment between times viewed during the playing of the animation.
static MStatus setPlaybackBy (const double &newTime)
 Specify the increment between times viewed during the playing of the animation.
static MTime minTime ()
 Return an MTime specifying the first frame of the current playback time range.
static MTime maxTime ()
 Return an MTime specifying the last frame of the current playback time range.
static MStatus setMinTime (MTime newMinTime)
 Set the first frame of the current playback time range.
static MStatus setMaxTime (MTime newMaxTime)
 Set the value of the last frame of the current playback time range.
static MStatus setMinMaxTime (MTime min, MTime max)
 Set the values of the first and last frames of the playback time range.
static MTime animationStartTime ()
 Return an MTime specifying the first frame of the animation, as specified by the Maya user in the Range Slider UI.
static MTime animationEndTime ()
 Return an MTime specifying the last frame of the animation, as specified by the Maya user in the Range Slider UI.
static MStatus setAnimationStartTime (MTime newStartTime)
 Set the value of the first frame in the animation.
static MStatus setAnimationEndTime (MTime newEndTime)
 Set the value of the last frame in the animation.
static MStatus setAnimationStartEndTime (MTime newStartTime, MTime newEndTime)
 Set the values of the first and last frames in the animation.
static MTime currentTime ()
 Return an MTime instance containing the current animation frame.
static MStatus setCurrentTime (const MTime &newTime)
 Set the current animation frame.
static double playbackSpeed ()
 Return the speed with with to play the animation.
static MStatus setPlaybackSpeed (double newSpeed)
 Set the desired speed factor at which the animation will play back.
static MStatus playForward ()
 Start playing the current animation forwards.
static MStatus playBackward ()
 Start playing the current animation backwards.
static bool isPlaying ()
 Return a value indicating whether Maya is currently playing the animation.
static MStatus stop ()
 Stop playing the current animation.
static bool autoKeyMode ()
 Return the autoKeyMode.
static MStatus setAutoKeyMode (bool mode)
 Set the autoKeyMode.
static MFnAnimCurve::TangentType globalInTangentType (MStatus *ReturnStatus=NULL)
 Return the current global in tangent type.
static MStatus setGlobalInTangentType (const MFnAnimCurve::TangentType &tangentType)
 Set the current global in tangent type.
static MFnAnimCurve::TangentType globalOutTangentType (MStatus *ReturnStatus=NULL)
 Return the current global out tangent type.
static MStatus setGlobalOutTangentType (const MFnAnimCurve::TangentType &tangentType)
 Set the current global out tangent type.
static bool weightedTangents (MStatus *ReturnStatus=NULL)
 Determine whether or not the tangents on the Anim Curve are weighted.
static MStatus setWeightedTangents (bool weightState)
 Sets whether or not the tangents on the Anim Curve are weighted.

Member Enumeration Documentation

Animation playback modes.

Enumerator:
kPlaybackOnce 

Play once then stop.

kPlaybackLoop 

Play continuously.

kPlaybackOscillate 

Play forwards, then backwards continuously.

Animation playback viewing modes.

Enumerator:
kPlaybackViewAll 

Playback in all views.

kPlaybackViewActive 

Playback in only the active view.


Member Function Documentation

MAnimControl::PlaybackMode playbackMode ( ) [static]

Return the playback mode currently in effect.

Returns:
An element of the MAnimControl::PlaybackMode enum.
MStatus setPlaybackMode ( PlaybackMode  newMode) [static]

Set the current playback mode.

Parameters:
[in]newModean element of MAnimControl::PlaybackMode
Returns:
MAnimControl::PlaybackViewMode viewMode ( ) [static]

Return the viewing mode currently in effect.

Returns:
An element of the MAnimControl::PlaybackViewMode enum.
MStatus setViewMode ( PlaybackViewMode  newMode) [static]

Set the current viewing mode.

Controls whether the animation is run in only the active view, or simultaneously in all views.

Parameters:
[in]newModean element of MAnimControl::PlaybackViewMode
Returns:
double playbackBy ( ) [static]

Return a double specifying the increment between times viewed during the playing of the animation.

Returns:
A double containing the increment
MStatus setPlaybackBy ( const double &  newTime) [static]

Specify the increment between times viewed during the playing of the animation.

Parameters:
[in]newTimea double containing the new increment
Returns:
MTime minTime ( ) [static]

Return an MTime specifying the first frame of the current playback time range.

This corresponds to the minTime which can also be set and queried using the playbackOptions mel command. It does not represent the first frame of the total animation time unless the two coincide.

Returns:
An MTime instance specifying the first frame of the playback time range
Examples:
animInfoCmd.cpp.
MTime maxTime ( ) [static]

Return an MTime specifying the last frame of the current playback time range.

This corresponds to the maxTime which can also be set and queried using the playbackOptions mel command. It does not represent the final frame of the total animation time unless the two coincide.

Returns:
An MTime instance specifying the last frame of the playback time range
Examples:
animInfoCmd.cpp.
MStatus setMinTime ( MTime  newMinTime) [static]

Set the first frame of the current playback time range.

Parameters:
[in]newMinTimean MTime containing the frame
Returns:
MStatus setMaxTime ( MTime  newMaxTime) [static]

Set the value of the last frame of the current playback time range.

Parameters:
[in]newMaxTimean MTime containing the new frame
Returns:
MStatus setMinMaxTime ( MTime  min,
MTime  max 
) [static]

Set the values of the first and last frames of the playback time range.

Parameters:
[in]minan MTime containing the new first frame
[in]maxan MTime containing the new last frame
Returns:
  • MS::kSuccess the first and last frames were changed successfully
  • MS::kFailure neither the first or last frames were changed
MTime animationStartTime ( ) [static]

Return an MTime specifying the first frame of the animation, as specified by the Maya user in the Range Slider UI.

This corresponds to the animationStartTime which can also be set and queried using the playbackOptions mel command.

Returns:
An MTime instance specifying the first frame of the animation
MTime animationEndTime ( ) [static]

Return an MTime specifying the last frame of the animation, as specified by the Maya user in the Range Slider UI.

This corresponds to the animationEndTime which can also be set and queried using the playbackOptions mel command.

Returns:
An MTime instance specifying the last frame in the animation
MStatus setAnimationStartTime ( MTime  newStartTime) [static]

Set the value of the first frame in the animation.

Parameters:
[in]newStartTimean MTime containing the new first frame
Returns:
MStatus setAnimationEndTime ( MTime  newEndTime) [static]

Set the value of the last frame in the animation.

Parameters:
[in]newEndTimean MTime containing the new last frame
Returns:
MStatus setAnimationStartEndTime ( MTime  newStartTime,
MTime  newEndTime 
) [static]

Set the values of the first and last frames in the animation.

Parameters:
[in]newStartTimean MTime containing the new first frame
[in]newEndTimean MTime containing the new last frame
Returns:
  • MS::kSuccess the first and last frames were changed successfully
  • MS::kFailure neither the first or last frames were changed
MTime currentTime ( ) [static]

Return an MTime instance containing the current animation frame.

Returns:
An MTime containing the current animation frame
Examples:
animInfoCmd.cpp, and renderViewInteractiveRenderCmd.cpp.
MStatus setCurrentTime ( const MTime newTime) [static]

Set the current animation frame.

Parameters:
[in]newTimean MTime containing the new animation frame
Returns:
double playbackSpeed ( ) [static]

Return the speed with with to play the animation.

Returns:
The desired playback speed factor
MStatus setPlaybackSpeed ( double  newSpeed) [static]

Set the desired speed factor at which the animation will play back.

Parameters:
[in]newSpeedthe new speed factor
Returns:
MStatus playForward ( ) [static]

Start playing the current animation forwards.

Returns:
MStatus playBackward ( ) [static]

Start playing the current animation backwards.

Returns:
bool isPlaying ( ) [static]

Return a value indicating whether Maya is currently playing the animation.

Returns:
  • true the animation is currently playing
  • false the animation is not currently playing
MStatus stop ( ) [static]

Stop playing the current animation.

Returns:
bool autoKeyMode ( ) [static]

Return the autoKeyMode.

Returns:
  • true the autoKeyMode is on
  • false the autoKeyMode is off
MStatus setAutoKeyMode ( bool  mode) [static]

Set the autoKeyMode.

Parameters:
[in]modea boolean specifying the new mode
Returns:
MFnAnimCurve::TangentType globalInTangentType ( MStatus ReturnStatus = NULL) [static]

Return the current global in tangent type.

Parameters:
[out]ReturnStatusStatus Code (see below)
Returns:
Status Codes:
MStatus setGlobalInTangentType ( const MFnAnimCurve::TangentType tangentType) [static]

Set the current global in tangent type.

Parameters:
[in]tangentTypethe global in tangent type to set [Note: MFnAnimCurve::kTangentGlobal and MFnAnimCurve::kTangentFixed are not valid arguments]
Returns:
  • MS::kSuccess the current global in tangent type was set successfully
  • MS::kFailure the current global in tangent type was not changed
MFnAnimCurve::TangentType globalOutTangentType ( MStatus ReturnStatus = NULL) [static]

Return the current global out tangent type.

Parameters:
[out]ReturnStatusStatus Code (see below)
Returns:
The current global out tangent type
Status Codes:
MStatus setGlobalOutTangentType ( const MFnAnimCurve::TangentType tangentType) [static]

Set the current global out tangent type.

Parameters:
[in]tangentTypethe global out tangent type to set [Note: MFnAnimCurve::kTangentGlobal and MFnAnimCurve::kTangentFixed are not valid arguments]
Returns:
  • MS::kSuccess the current global out tangent type was set successfully
  • MS::kFailure the current global out tangent type was not changed
bool weightedTangents ( MStatus ReturnStatus = NULL) [static]

Determine whether or not the tangents on the Anim Curve are weighted.

Parameters:
[out]ReturnStatusStatus Code
Returns:
  • true the tangents on the Anim Curve are weighted
  • false the tangents on the Anim Curve are not weighted
Status Codes:
MStatus setWeightedTangents ( bool  weightState) [static]

Sets whether or not the tangents on the Anim Curve are weighted.

Note: switching a curve from weightedTangents true to false and back to true again will not preserve fixed tangents properly. Use undo instead.

Parameters:
[in]weightStatea boolean specifying whether tangents should be weighted or not
Returns:

MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl
MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl MAnimControl