MGlobal Class Reference
[OpenMaya - API module for common classes]

#include <MGlobal.h>

List of all members.


Detailed Description

Static class providing common API global functions.

Provide methods for selection, 3D-views, time, model manipulation and MEL commands.

MGlobal is a static class which provides access to Maya's model (3d graphical database).

MGlobal provides methods for selection, 3d-views, setting the global time, adding to the DAG, and executing MEL commands from within the API. There are multiple methods provided in this class for executing MEL within the API. Plug-ins requiring the execution of MEL from the non-main Maya thread must use the executeCommandOnIdle() method to avoid program errors.

MGlobal also provides methods for controlling error logging in the API.

Public Types

enum  MMayaState { kInteractive, kBatch, kLibraryApp, kBaseUIMode }
 State in which Maya has been started. More...
enum  ListAdjustment {
  kReplaceList, kXORWithList, kAddToList, kRemoveFromList,
  kAddToHeadOfList
}
 Operations on selection lists. More...
enum  SelectionMethod { kSurfaceSelectMethod, kWireframeSelectMethod }
 Choices for types of selection methods used in the selectFromScreen functions. More...
enum  MSelectionMode {
  kSelectObjectMode, kSelectComponentMode, kSelectRootMode, kSelectLeafMode,
  kSelectTemplateMode
}
 Global selection modes. More...

Static Public Member Functions

static MString mayaVersion ()
static int apiVersion ()
static MMayaState mayaState (MStatus *ReturnStatus=NULL)
static MStatus getFunctionSetList (MObject forObject, MStringArray &array)
static MStatus getAssociatedSets (const MSelectionList &list, MObjectArray &setArray)
static MStatus getSelectionListByName (const MString &name, MSelectionList &list)
static MStatus getActiveSelectionList (MSelectionList &dest)
static MStatus getRichSelection (MRichSelection &dest, bool defaultToActiveSelection=true)
static MStatus getLiveList (MSelectionList &dest)
static MStatus getHiliteList (MSelectionList &dest)
static MStatus setHiliteList (MSelectionList &src)
static MStatus setActiveSelectionList (const MSelectionList &src, ListAdjustment=kReplaceList)
static MStatus setDisplayCVs (MSelectionList &, bool)
static MStatus selectCommand (const MSelectionList &src, ListAdjustment=kReplaceList)
static MStatus selectByName (const MString &name, ListAdjustment=kAddToList)
static MStatus unselectByName (const MString &name)
static MStatus select (MObject &object, ListAdjustment=kAddToList)
static MStatus select (const MDagPath &object, const MObject &component, ListAdjustment=kAddToList)
static MStatus unselect (MObject &object)
static MStatus unselect (const MDagPath &object, const MObject &component)
static MStatus selectFromScreen (const short &x_pos, const short &y_pos, ListAdjustment=kAddToList, SelectionMethod=kWireframeSelectMethod)
static MStatus selectFromScreen (const short &start_x, const short &start_y, const short &end_x, const short &end_y, ListAdjustment=kAddToList, SelectionMethod=kWireframeSelectMethod)
static SelectionMethod selectionMethod (MStatus *ReturnStatus=NULL)
static MSelectionMode selectionMode (MStatus *ReturnStatus=NULL)
static MStatus setSelectionMode (MSelectionMode mode)
static MSelectionMask objectSelectionMask (MStatus *ReturnStatus=NULL)
static MStatus setObjectSelectionMask (const MSelectionMask &mask)
static MSelectionMask componentSelectionMask (MStatus *ReturnStatus=NULL)
static MStatus setComponentSelectionMask (const MSelectionMask &mask)
static MSelectionMask animSelectionMask (MStatus *ReturnStatus=NULL)
static MStatus setAnimSelectionMask (const MSelectionMask &mask)
static MSelectionMask miscSelectionMask (MStatus *ReturnStatus=NULL)
static MStatus setMiscSelectionMask (const MSelectionMask &mask)
static MStatus clearSelectionList ()
static bool isSelected (MObject &object, MStatus *ReturnStatus=NULL)
static MStatus viewFrame (const MTime &time)
static MStatus viewFrame (double time)
static MStatus sourceFile (const MString &fileName)
static MStatus executeCommandOnIdle (const MString &command, bool displayEnabled=false)
static MStatus executeCommand (const MString &command, bool displayEnabled=false, bool undoEnabled=false)
static MStatus executeCommand (const MString &command, MCommandResult &result, bool displayEnabled=false, bool undoEnabled=false)
static MStatus executeCommand (const MString &command, int &result, bool displayEnabled=false, bool undoEnabled=false)
static MStatus executeCommand (const MString &command, MIntArray &result, bool displayEnabled=false, bool undoEnabled=false)
static MStatus executeCommand (const MString &command, double &result, bool displayEnabled=false, bool undoEnabled=false)
static MStatus executeCommand (const MString &command, MDoubleArray &result, bool displayEnabled=false, bool undoEnabled=false)
static MStatus executeCommand (const MString &command, MStringArray &result, bool displayEnabled=false, bool undoEnabled=false)
static MString executeCommandStringResult (const MString &command, bool displayEnabled=false, bool undoEnabled=false, MStatus *ResultStatus=NULL)
static MStatus executeCommand (const MString &command, MString &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, int &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, MIntArray &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, double &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, MDoubleArray &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MString executePythonCommandStringResult (const MString &command, bool displayEnabled=false, bool undoEnabled=false, MStatus *ReturnStatus=NULL)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, MString &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommand (const MString &command, MStringArray &result, bool displayEnabled=false, bool undoEnabled=false)
 This method is not available in Python.
static MStatus executePythonCommandOnIdle (const MString &command, bool displayEnabled=false)
 This method is not available in Python.
static MStatus addToModel (MObject &object, MObject &parent=MObject::kNullObj)
static MStatus addToModelAt (MObject &, const MVector &point, const double scale[3]=NULL, const double rotation[3]=NULL, MTransformationMatrix::RotationOrder order=MTransformationMatrix::kXYZ)
static MStatus removeFromModel (MObject &)
static MStatus deleteNode (MObject &)
static MStatus setYAxisUp (bool rotateView=false)
static MStatus setZAxisUp (bool rotateView=false)
static bool isYAxisUp (MStatus *=NULL)
static bool isZAxisUp (MStatus *=NULL)
static MVector upAxis (MStatus *=NULL)
static void displayInfo (const MString &theMessage)
static void displayWarning (const MString &theWarning)
static void displayError (const MString &theError)
static void setDisableStow (bool state)
static bool disableStow ()
static int optionVarIntValue (const MString &name, bool *result=NULL)
 setting & getting option variable values
static double optionVarDoubleValue (const MString &name, bool *result=NULL)
static MString optionVarStringValue (const MString &name, bool *result=NULL)
static bool setOptionVarValue (const MString &name, int value)
static bool setOptionVarValue (const MString &name, double value)
static bool setOptionVarValue (const MString &name, MString value)
static MString defaultErrorLogPathName (MStatus *ReturnStatus=NULL)
static MStatus resetToDefaultErrorLogPathName ()
static MStatus setErrorLogPathName (const MString &logPathName)
static MString errorLogPathName (MStatus *ReturnStatus=NULL)
static MStatus startErrorLogging ()
static MStatus startErrorLogging (const MString &logPathName)
 MapiSuccess( &ReturnStatus );.
static bool errorLoggingIsOn (MStatus *ReturnStatus=NULL)
static MStatus stopErrorLogging ()
static MStatus closeErrorLog ()
static MStatus doErrorLogEntry (const MString &errorLogEntry)
static bool isUndoing ()
static bool isRedoing ()
static bool getOptionVarValue (const MString &name, int &value)
 This method is obsolete. This method is not available in Python.
static bool getOptionVarValue (const MString &name, double &value)
 This method is obsolete. This method is not available in Python.
static bool getOptionVarValue (const MString &name, MString &value)
 This method is obsolete. This method is not available in Python.
static MStatus select (MDagPath &object, const MObject &component, ListAdjustment=kAddToList)
 This method is obsolete. This method is not available in Python.
static MStatus unselect (MDagPath &object, const MObject &component)
 This method is obsolete. This method is not available in Python.


Member Enumeration Documentation

State in which Maya has been started.

Enumerator:
kInteractive  Running with a UI.
kBatch  Running without a UI.
kLibraryApp  A standalone (MLibrary) application is running.
kBaseUIMode  Running in baseUI mode.

Operations on selection lists.

Enumerator:
kReplaceList  Totally replace the list with the given items.
kXORWithList  For each item, remove it to the list if that are already present, add it otherwise.
kAddToList  Add the items to the list.
kRemoveFromList  Remove the items from the list.
kAddToHeadOfList  Add to beginning of the list.

Choices for types of selection methods used in the selectFromScreen functions.

Enumerator:
kSurfaceSelectMethod  Select based on the wireframe of the objects.
kWireframeSelectMethod  Select based on the surface of the objects.

Global selection modes.

Enumerator:
kSelectObjectMode  Select objects.
kSelectComponentMode  Select components.
kSelectRootMode  Select DAG roots.
kSelectLeafMode  Select DAG leaves.
kSelectTemplateMode  Select templates.


Member Function Documentation

MString MGlobal::mayaVersion (  )  [static]

Returns a string describing this version of Maya.

Returns:
The version string
Examples:

int MGlobal::apiVersion (  )  [static]

Returns a number describing the version of the Maya API at runtime.

Returns:
The current API version

MGlobal::MMayaState MGlobal::mayaState ( MStatus ReturnStatus = NULL  )  [static]

Returns an enumerated type specifying the way in which Maya was invoked.

Returns:
Status Codes:
Examples:

MStatus MGlobal::getFunctionSetList ( MObject  forObject,
MStringArray array 
) [static]

Gets a list of strings that represent the type of each function set that will accept this object. The strings match the values in MFn.h.

Parameters:
[in] forObject object to get list of function sets for
[out] array storage for the array of strings
Returns:
Status Code
Status Codes:
Examples:

MStatus MGlobal::getAssociatedSets ( const MSelectionList list,
MObjectArray setArray 
) [static]

This utility method finds all the sets that the items in the given selection list are members of.

Parameters:
[in] list items to finds sets for
[out] setArray storage for the array of sets
Returns:
Status Code
Status Codes:

MStatus MGlobal::getSelectionListByName ( const MString name,
MSelectionList list 
) [static]

This method fills a selection list with all of the objects that match a specified name. The name may use the same type of regular expressions the can be used in MEL commands. For example, the pattern "pCube*" will match all occurances of objects that begin their names with "pCube".

Taking this a step further, the following example looks for all objects that both start their names with "pCube" but also have a child that starts its name with "pCubeShape". Since the pattern is matching a DAG path, the items that match the pattern should be DAG nodes.

    MStatus testCommand::doIt()
    {
        MSelectionList sList;
        MString toMatch ("pCube*|pCubeShape*");
        MGlobal::getSelectionListByName(toMatch, sList);

        unsigned int ii = 0;
        unsigned int nMatches = sList.length();
        for (ii = 0; ii < nMatches; ++ii) {
            MDagPath dp;
            sList.getDagPath(ii, dp);
            cout << dp.fullPathName() << endl;
        }

        return MS::kSuccess ;
    }

For the case where a polyCube (pCube1) is the parent of another polyCube (pCube2), the output of the above example would be as follows:

|pCube1|pCubeShape1 |pCube1|pCube2|pCubeShape2

Parameters:
[in] name Regular expression to match object name.
[out] list Selection list into which the objects matching the name will be placed.
Returns:
Status code
Status Codes:

MStatus MGlobal::getActiveSelectionList ( MSelectionList dest  )  [static]

MStatus MGlobal::getRichSelection ( MRichSelection richSelection,
bool  defaultToActiveSelection = true 
) [static]

Returns the current rich selection (usually the active selection with any soft selection and symmetry applied). Optionally if no rich selection exists, the current active selection can be returned instead (reducing the need for duplicated code).

Parameters:
[out] richSelection Storage for the rich selection
[in] defaultToActiveSelection If true, Maya will return the active selection when no rich selection exists.
Returns:
Status code
Status Codes:

MStatus MGlobal::getLiveList ( MSelectionList dest  )  [static]

Returns a copy of the live list. When a user performs a "Modify->Make Live" in the user interface the currently selected objects are added to the live list.

Parameters:
[out] dest Storage for the selection list
Returns:
Status code
Status Codes:

MStatus MGlobal::getHiliteList ( MSelectionList dest  )  [static]

Returns a copy of the hilite list. The hilite list contains all DAG objects that are hilited for component selection mode. (e.g. when the user right clicks over a Mesh object and chooses the "vertex" option the Mesh line drawing changes color and the mesh is added to the hiliteList.)

Parameters:
[out] dest Storage for the hilite list
Returns:
Status code
Status Codes:

MStatus MGlobal::setHiliteList ( MSelectionList list  )  [static]

Sets the current hilite list. The current selection list is unchanged.

Parameters:
[in] list The new hilite list.
Returns:
Status code
Status Codes:

MStatus MGlobal::setActiveSelectionList ( const MSelectionList src,
MGlobal::ListAdjustment  listAdjustment = kReplaceList 
) [static]

Set the active selection list. The selection items on the given list will update the contents of the active selection list as indicated by the listAdjustment parameter.

Parameters:
[in] src The source list
[in] listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
Returns:
Status code
Status Codes:
Examples:

MStatus MGlobal::setDisplayCVs ( MSelectionList src,
bool  state 
) [static]

Controls drawing of control points in the specified selection list.

The selection items on the given list will be marked for drawing. This overrides Maya's current draw list and allow, for example, the drawing of control points without being in vertex selection mode.

Parameters:
[in] src The source list
[in] state Whether items should be marked on/off for drawing
Returns:
Status code
Status Codes:

MStatus MGlobal::selectCommand ( const MSelectionList src,
MGlobal::ListAdjustment  listAdjustment = kReplaceList 
) [static]

Set the active selection list, by calling the built in Maya select command. This differs from setActiveSelectionList in that in this version Maya takes over the selection list you give it and will be responsible for maintaing the necessary information required for undo, redo, and journalling.

Parameters:
[in] src The source list
[in] listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
Returns:
Status code
Status Codes:
Examples:

MStatus MGlobal::selectByName ( const MString name,
MGlobal::ListAdjustment  listAdjustment = kAddToList 
) [static]

Puts objects that match the give name on the active selection list.

Parameters:
[in] name Regular expression to match object name.
[in] listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
Returns:
Status Code
Status Codes:
Examples:

MStatus MGlobal::unselectByName ( const MString name  )  [static]

Removes objects matching the pattern from the active selection list.

Parameters:
[in] name Regular expression to match object name.
Returns:
Status Code
Status Codes:

MStatus MGlobal::select ( MObject object,
MGlobal::ListAdjustment  listAdjustment = kAddToList 
) [static]

Put the given object on the active selection list.

Parameters:
[in] object Object to make selected.
[in] listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
Returns:
Status Code
Status Codes:

MStatus MGlobal::select ( const MDagPath object,
const MObject component,
MGlobal::ListAdjustment  listAdjustment = kAddToList 
) [static]

Put the given object or components on the active selection list. If the component is null then the object in the dag path will be selected, otherwise the given component will be selected.

Parameters:
[in] object Object to make selected.
[in] component Components to select.
  • listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
Returns:
Status Code
Status Codes:

MStatus MGlobal::unselect ( MObject object  )  [static]

Remove the given object from the active selection list.

Parameters:
[in] object Object to unselect.
Returns:
Status Code
Status Codes:

MStatus MGlobal::unselect ( const MDagPath object,
const MObject component 
) [static]

Remove the given object/components from the active selection list. If components is null then the object will be unselected, otherwise the components will be unselected.

Parameters:
[in] object Object to unselect.
[in] component Components to be unselected.
Returns:
Status Code
Status Codes:

MStatus MGlobal::selectFromScreen ( const short &  x_pos,
const short &  y_pos,
MGlobal::ListAdjustment  listAdjustment = kAddToList,
MGlobal::SelectionMethod  selectMethod = kWireframeSelectMethod 
) [static]

Perform click-pick type selection on the dag. If an object intersects the click point then it is selected according to listAdjustment.

Parameters:
[in] x_pos X position on screen to select at.
[in] y_pos Y position on screen to select at.
[in] listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
[in] selectMethod Determines how the selection is done. kWireframeSelectMethod Selection point must hit the wireframe of an object for it to be selected. kSurfaceSelectMethod Selection point can hit anywhere on the surface of an object for it to be selected.
Returns:
Status Code
Status Codes:
Examples:

MStatus MGlobal::selectFromScreen ( const short &  start_x,
const short &  start_y,
const short &  end_x,
const short &  end_y,
MGlobal::ListAdjustment  listAdjustment = kAddToList,
MGlobal::SelectionMethod  selectMethod = kWireframeSelectMethod 
) [static]

Perform marquee type selection on the dag. If an object intersects the selection rectangle, it is selected according to listAdjustment.

Parameters:
[in] start_x Start x position of selection rectangle
[in] start_y Start y position of selection rectangle
[in] end_x End x position of selection rectangle
[in] end_y End y position of selection rectangle
[in] listAdjustment Determines how the active selection list is modified. kReplaceList Totally replace the active list with the given items. kXORWithList If one of the given items is in the active list take it out, otherwise add it to the active list. kAddToList Add the items to the list kRemoveFromList Remove the items from the list kAddToHeadOfList Add the items to beginning of the list
[in] selectMethod Determines how the selection is done. kWireframeSelectMethod If part of the wireframe of an object falls inside the select rectangle then it will be selected. kSurfaceSelectMethod If any part of of an object falls inside the select rectangle then it will be selected.
Returns:
Status Code
Status Codes:

MGlobal::SelectionMethod MGlobal::selectionMethod ( MStatus ReturnStatus = NULL  )  [static]

Determines the selection method that should be used in the currently active viewport. This is useful as input to the "selectFromScreen" functions.

Parameters:
[out] ReturnStatus 
Returns:
The selection method.
Status Codes:
Examples:

MGlobal::MSelectionMode MGlobal::selectionMode ( MStatus ReturnStatus = NULL  )  [static]

Determines Maya's selection mode.

kSelectObjectMode -- Objects are selected as a whole. Components are not directly accessible.

kSelectComponentMode -- Components such as vertices are selectable in this mode.

kSelectRootMode -- Selecting the child in a hierarchy will also select its root DAG node.

kSelectLeafMode -- Selecting the child in a hierarchy will result only in that child being selected.

kSelectTemplateMode -- Templated objects are selectable in this mode.

Parameters:
[out] ReturnStatus 
Returns:
The selection mode.
Status Codes:

MStatus MGlobal::setSelectionMode ( MGlobal::MSelectionMode  mode  )  [static]

Sets the selection mode.

kSelectObjectMode -- Objects are selected as a whole. Components are not directly accessible.

kSelectComponentMode -- Components such as vertices are selectable in this mode.

kSelectRootMode -- Selecting the child in a hierarchy will also select its root DAG node.

kSelectLeafMode -- Selecting the child in a hierarchy will result only in that child being selected.

kSelectTemplateMode -- Templated objects are selectable in this mode.

Parameters:
[in] mode The mode to be set
Returns:
Status Code
Status Codes:

MSelectionMask MGlobal::objectSelectionMask ( MStatus ReturnStatus = NULL  )  [static]

Returns the object selection mask.

Parameters:
[out] ReturnStatus 
Returns:
The selection mask
Status Codes:

MStatus MGlobal::setObjectSelectionMask ( const MSelectionMask mask  )  [static]

Set the object selection mask to the supplied value

Parameters:
[in] mask The mask to set to
Returns:
Status Code
Status Codes:

MSelectionMask MGlobal::componentSelectionMask ( MStatus ReturnStatus = NULL  )  [static]

Returns the component selection mask.

Parameters:
[out] ReturnStatus 
Returns:
The component selection mask
Status Codes:

MStatus MGlobal::setComponentSelectionMask ( const MSelectionMask mask  )  [static]

Set the component selection mask to the supplied value

Parameters:
[in] mask The mask to be set
Returns:
Status Code
Status Codes:

MSelectionMask MGlobal::animSelectionMask ( MStatus ReturnStatus = NULL  )  [static]

Returns the animation selection mask.

Parameters:
[out] ReturnStatus 
Returns:
The selection mask
Status Codes:

MStatus MGlobal::setAnimSelectionMask ( const MSelectionMask mask  )  [static]

Set the animation selection mask to the supplied value

Parameters:
[in] mask The mask to be set
Returns:
Status Code
Status Codes:

MSelectionMask MGlobal::miscSelectionMask ( MStatus ReturnStatus = NULL  )  [static]

Returns the miscellaneous selection mask.

Parameters:
[out] ReturnStatus 
Returns:
The selection mask
Status Codes:

MStatus MGlobal::setMiscSelectionMask ( const MSelectionMask mask  )  [static]

Set the miscellaneous selection mask to the supplied value

Parameters:
[in] mask The mask to be set
Returns:
Status Code
Status Codes:

MStatus MGlobal::clearSelectionList (  )  [static]

Removes all items from the active selection list.

Returns:
Status Code
Status Codes:
Examples:

bool MGlobal::isSelected ( MObject object,
MStatus ReturnStatus = NULL 
) [static]

Determines whether the given object is on the active selection list.

Note: The given object must be a dependency node.

Parameters:
[in] object Dependency node object to test.
[out] ReturnStatus 
Returns:
Boolean value: true if the object is selected, false otherwise.
Status Codes:
  • kSuccess Method successfully returned a result
  • kInvalidParameter A null MObject was provided
  • kFailure Error doing test

MStatus MGlobal::viewFrame ( const MTime time  )  [static]

Sets the global time to the specified time. This function is optimized for sequential time values that are monotonically increasing. While one can set the time randomly with this function, a significant performance hit will be incurred.

Parameters:
[in] time Time to set.
Returns:
Status Code
Status Codes:
Examples:

MStatus MGlobal::viewFrame ( double  time  )  [static]

Sets the global time to the specified time. This function is optimized for sequential time values that are monotonically increasing. While one can set the time randomly with this function, a significant performance hit will be incurred.

Parameters:
[in] time Time to set, in the units currently in effect for the user interface.
Returns:
Status Code
Status Codes:

MStatus MGlobal::sourceFile ( const MString fileName  )  [static]

Causes the MEL command engine to open the named file and execute the contents of the file as a MEL script. If the provided fileName is a Unix absolute pathname, then that file is opened. If a relative pathname is provided, the directories indicated by the environment variable, MAYA_SCRIPT_PATH, will be searched for a matching filename.

Parameters:
[in] fileName The name of a file containing MEL commands
Returns:
Status Code
Status Codes:
  • MS::kSuccess the contents of the file executed successfully
  • MS::kFailure the contents of the file was not successfully executed.
Examples:

MStatus MGlobal::executeCommandOnIdle ( const MString command,
bool  displayEnabled = false 
) [static]

Sets a MEL command to execute on the next idle event. This is a thread safe way to execute commands, however, there is no access to the command results. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled.

Parameters:
[in] command The MEL command string to add to idle queue.
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
Returns:
Status Code
Status Codes:

MStatus MGlobal::executeCommand ( const MString command,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command with no access to result. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute.
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
Status Code
Status Codes:
Examples:

MStatus MGlobal::executeCommand ( const MString command,
MCommandResult result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command that returns an MCommandResult from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] result The command result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
Status Code
Status Codes:

MStatus MGlobal::executeCommand ( const MString command,
int &  result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command that returns an integer result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] result The integer result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
Integer return from command
Status Codes:

MStatus MGlobal::executeCommand ( const MString command,
MIntArray result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command that returns an integer array result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] result The MIntArray result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
Status code
Status Codes:

MStatus MGlobal::executeCommand ( const MString command,
double &  result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command that returns a double result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] result The double result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
Double returned by command
Status Codes:

MStatus MGlobal::executeCommand ( const MString command,
MDoubleArray result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command that returns a double array result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] result The MDoubleArray result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
Double array value returned from command
Status Codes:

MStatus MGlobal::executeCommand ( const MString command,
MStringArray result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

Executes a MEL command that returns a string array result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] result The MStringArray result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
String array value returned by command
Status Codes:

MString MGlobal::executeCommandStringResult ( const MString command,
bool  displayEnabled = false,
bool  undoEnabled = false,
MStatus ReturnStatus = NULL 
) [static]

Executes a MEL command that returns a string result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Parameters:
[in] command The MEL command string to execute
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
[out] ReturnStatus Optional return status. See below.
Returns:
String value returned by command
Status Codes:
Examples:

MStatus MGlobal::executeCommand ( const MString command,
MString result,
bool  displayEnabled = false,
bool  undoEnabled = false 
) [static]

This method is not available in Python.

Executes a MEL command that returns a string result from the command engine. Optionally allows display of the command in the Command Window to be enabled or disabled. Defaults to disabled. Optionally allows undo for the command to be enabled or disabled. Defaults to disabled.

Note: This is not thread safe; you may use executeCommandOnIdle instead.

Python Notes

This method is not supported in Python. Please see the executeCommandStringResult() function.

Parameters:
[in] command The MEL command string to execute
[in] result The MString result
[in] displayEnabled Flag to enable display of command in journal window - defaults to false
[in] undoEnabled Flag to enable addition of command to undo queue - defaults to false
Returns:
String value returned by command
Status Codes:

MStatus MGlobal::addToModel ( MObject object,
MObject parent = MObject::kNullObj 
) [static]

This method is used to add new dag objects to the model. If no parent node is specified, then the node is added under the world. When a node is added under the world, then a transform node is automatically created as a parent. This assumes that the node being added is not already a transform node. This method is only valid for dag nodes. If the specified object is not of type MFn::kDagNode then MS::kInvalidParameter will be returned.

Parameters:
[in] object object to be added
[in] parent parent dag node (optional)
Returns:
Status Code
Status Codes:

MStatus MGlobal::addToModelAt ( MObject object,
const MVector point,
const double  scale[3] = NULL,
const double  rotation[3] = NULL,
MTransformationMatrix::RotationOrder  rotOrder = MTransformationMatrix::kXYZ 
) [static]

Adds the specified dag object to the DAG and transform the object by the specified arguments. This method is only valid for dag nodes. If the specified object is not of type MFn::kDagNode then MS::kInvalidParameter will be returned.

Parameters:
[in] object the object to be added to the DAG
[in] point translation vector
[in] scale scale amount
[in] rotation rotation amount
[in] rotOrder the orger of the rotation
Returns:
Status Code
Status Codes:

MStatus MGlobal::removeFromModel ( MObject object  )  [static]

Removes the specified dag node from the scene. This method is only valid for dag nodes. If the specified object is not of type MFn::kDagNode then MS::kInvalidParameter will be returned.

Parameters:
[in] object dag node to be removed from the scene
Returns:
Status Code
Status Codes:
  • MS::kSuccess node was successfully removed
  • MS::kInvalidParamter object is NULL, or is not a dag node, or has already been removed
  • MS::kFailure could not remove the node from the scene
Examples:

MStatus MGlobal::deleteNode ( MObject object  )  [static]

Delete the given dag node or dependency graph node.

Parameters:
[in] object node to be deleted
Returns:
Status Code
Status Codes:
  • MS::kSuccess node was successfully removed
  • MS::kInvalidParamter object is NULL, or is not a depenency node, or has already been deleted
  • MS::kFailure could not delete the node
Examples:

MStatus MGlobal::setYAxisUp ( bool  rotateView = false  )  [static]

This method sets the flag to identify which axis is Up, and rotates the ground plane around around the X-axis 90 degrees to get the Y-Up from Z-Up.

Parameters:
[in] rotateView If true then the viewing camera will be rotated
Returns:
Status Code
Status Codes:

MStatus MGlobal::setZAxisUp ( bool  rotateView = false  )  [static]

This method sets the flag to identify which axis is Up, and rotates the ground plane around around the X-axis -90 degrees to get the Z-Up from Y-Up.

Parameters:
[in] rotateView If true then the viewing camera will be rotated
Returns:
Status Code
Status Codes:

bool MGlobal::isYAxisUp ( MStatus ReturnStatus = NULL  )  [static]

This method returns true if, currently, the Y-axis is UP.

Parameters:
[in] ReturnStatus 
Returns:
Boolean value: true the Y-axis is Up, false otherwise.
Status Codes:

bool MGlobal::isZAxisUp ( MStatus ReturnStatus = NULL  )  [static]

This method returns true if, currently, the Z-axis is UP.

Parameters:
[in] ReturnStatus 
Returns:
Boolean value: true the Z-axis is Up, false otherwise.
Status Codes:

MVector MGlobal::upAxis ( MStatus ReturnStatus = NULL  )  [static]

This method returns the model's current up axis.

Parameters:
[in] ReturnStatus 
Returns:
The models up axis
Status Codes:

void MGlobal::displayInfo ( const MString theMessage  )  [static]

void MGlobal::displayWarning ( const MString theWarning  )  [static]

void MGlobal::displayError ( const MString theError  )  [static]

void MGlobal::setDisableStow ( bool  state  )  [static]

This method is used to make the visiblity of all Maya windows unchangable. If set to true, it disables any attempts to change the visiblity of any window. In addition, all popup windows will be supressed.

Parameters:
[in] state true or false

bool MGlobal::disableStow (  )  [static]

This method is used to query if the disabling of Stowing (hiding) and Unstowing (showing) windows is active..

Returns:
true if Stow is disabled, false if Stow is operating normally

int MGlobal::optionVarIntValue ( const MString name,
bool *  result = NULL 
) [static]

setting & getting option variable values

This method is used to get the option variable value of int type

Parameters:
[in] name option variable name
Returns:
true if the variable exits , false if variable does not exist

double MGlobal::optionVarDoubleValue ( const MString name,
bool *  result = NULL 
) [static]

This method is used to get the option variable value of type double

Parameters:
[in] name option variable name
Returns:
true if the variable exits , false if variable does not exist

MString MGlobal::optionVarStringValue ( const MString name,
bool *  result = NULL 
) [static]

This method is used to get the option variable value of type string

Parameters:
[in] name option variable name
Returns:
true if the variable exits , false if variable does not exist

bool MGlobal::setOptionVarValue ( const MString name,
int  value 
) [static]

This method is used to set the option variable value of int type

Parameters:
[in] name option variable name
[in] value option variable value to set
Returns:
true
Examples:

bool MGlobal::setOptionVarValue ( const MString optionVarName,
double  value 
) [static]

This method is used to set the option variable value of type double

Parameters:
[in] optionVarName option variable name
[in] value option variable value to set
Returns:
true

bool MGlobal::setOptionVarValue ( const MString name,
MString  value 
) [static]

This method is used to set the option variable value of type string

Parameters:
[in] name option variable name
[in] value option variable value to set
Returns:
true

MString MGlobal::defaultErrorLogPathName ( MStatus ReturnStatus = NULL  )  [static]

Determines the default path name of the error log file. Returns the null string on failure.

Returns:
Default path name
Status Codes:
  • kSuccess Default path name is valid
  • kFailure Could not determine default path name - could not access error log handler

MStatus MGlobal::resetToDefaultErrorLogPathName (  )  [static]

Closes the current log file if it is open, and then resets the log path to the default path. Logging is disabled and the log file speicified by the default path is not opened. If logging is disabled, it remains disabled. Use startErrorLogging() to enable logging to the default log file. If the current path is the default path, no action is taken, but an invalid parameter error is returned.

Note that if the default log is reopened after it is closed, all information previously logged to it is lost.

Returns:
Status Code
Status Codes:
  • MS::kSuccess Log file set at default path
  • MS::kInvalidParameter Current path is default path
  • MS::kFailure Status of log unknown - could not access log handler, could not close previously open log, or failed to set path name

MStatus MGlobal::setErrorLogPathName ( const MString logPathName  )  [static]

Closes the current log file if it is open, and then sets the log path to the given path. If logging is enabled, it remains enabled, but on the log file speicified by the new path. If logging is disabled, it remains disabled. Use startErrorLogging() to enable logging to the new file. If the given path name is the same as the current path name, no action is taken, but an invalid parameter error is returned.

Parameters:
[in] logPathName Path of the new error log file
Returns:
Status Code
Status Codes:

MString MGlobal::errorLogPathName ( MStatus ReturnStatus = NULL  )  [static]

Determines the path name of the current error log file. Returns the null string on failure.

Parameters:
[out] ReturnStatus Status Code (see below)
Returns:
Error log path name
Status Codes:

MStatus MGlobal::startErrorLogging (  )  [static]

This method enables output to the API error log. If no log is currently open, a log file is opened at the current path. The error log is time and date stamped when it is opened. If output is already enabled, then no action is taken.

Returns:
Status Code
Status Codes:
  • MS::kSuccess Output to API error log is enabled
  • MS::kFailure Could not enable output to API error log - could not access error log handler or could not start log.

MStatus MGlobal::startErrorLogging ( const MString logPathName  )  [static]

MapiSuccess( &ReturnStatus );.

This method enables output to the API error log file specified by the path. If another error log file is already open this method time and date stamps the log, and closes it. The new error log is time and date stamped when it is opened.

If the new path name is the same as the current path name, this method ensures that logging is enabled, but no other action is taken.

Parameters:
[in] logPathName Path of the error log file
Returns:
Status Code
Status Codes:
  • MS::kSuccess Output to API error log is enabled
  • MS::kFailure Could not enable output to API error log - could not set path name, could not access error log handler, or could not start log

bool MGlobal::errorLoggingIsOn ( MStatus ReturnStatus = NULL  )  [static]

This method determines whether or not API errors are being logged.

Parameters:
[out] ReturnStatus Status Code (see below)
Returns:
Boolean value: true Errors are being logged false otherwise.
Status Codes:

MStatus MGlobal::stopErrorLogging (  )  [static]

This method disables output to the API error log but does not close the log file.

Returns:
Status Code
Status Codes:
  • MS::kSuccess Output to API error log is disabled
  • MS::kFailure Status of log unknown - could not access error log handler

MStatus MGlobal::closeErrorLog (  )  [static]

This method closes the API error log file. If error logging is currently enabled this method disables it. The error log is time and date stamped before it is closed. After the log is closed the error log path name is reset to the default path name. If the error log file is already closed, then no action is taken.

Note that if a log is reopened after it is closed, all information previously logged to it is lost.

Returns:
Status Code
Status Codes:
  • MS::kSuccess Error log file closed
  • MS::kFailure Log state not known - could not access error log handler, or error occurred when attempting to close file

MStatus MGlobal::doErrorLogEntry ( const MString errorLogEntry  )  [static]

Logs an entry in the currently open log file. It is not necessary for error logging to be enabled, but a log file must be open. A newline is appended to each log entry.

Parameters:
[in] errorLogEntry Information to log to file
Returns:
Status Code
Status Codes:

bool MGlobal::isUndoing (  )  [static]

Returns true if Maya is currently in the middle of an undo.

Returns:
Boolean value: true if Maya is undoing, false otherwise.

bool MGlobal::isRedoing (  )  [static]

Returns true if Maya is currently in the middle of an redo.

Returns:
Boolean value: true if Maya is redoing, false otherwise.

bool MGlobal::getOptionVarValue ( const MString name,
int &  value 
) [static]

This method is obsolete. This method is not available in Python.

Deprecated:
Use MGlobal::optionVarIntValue instead.
Examples:

bool MGlobal::getOptionVarValue ( const MString name,
double &  value 
) [static]

This method is obsolete. This method is not available in Python.

Deprecated:
Use MGlobal::optionVarDoubleValue instead.

bool MGlobal::getOptionVarValue ( const MString name,
MString value 
) [static]

This method is obsolete. This method is not available in Python.

Deprecated:
Use MGlobal::optionVarStringValue instead.

MStatus MGlobal::select ( MDagPath object,
const MObject component,
MGlobal::ListAdjustment  listAdjustment = kAddToList 
) [static]

This method is obsolete. This method is not available in Python.

Deprecated:
Use the version of MGlobal::select which takes a constant reference to an MDagPath as its first parameter.

MStatus MGlobal::unselect ( MDagPath object,
const MObject component 
) [static]

This method is obsolete. This method is not available in Python.

Deprecated:
Use the version of MGlobal::unselect which takes a constant reference to an MDagPath as its first parameter.


Autodesk® Maya® 2010 © 1997-2009 Autodesk, Inc. All rights reserved. Generated with doxygen 1.5.6