- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Examples

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Static Public Member Functions

# MAngle Class Reference
OpenMaya - API module for common classes

This reference page is linked to from the following overview topics: Appendix C: Frequently asked questions.

Search for all occurrences

## Detailed Description

Manipulate Angular Data.

Methods for setting and retreiving angular data in various unit systems

The MAngle class provides a fundamental type for the Maya API to hold and manipulate angular data. All API methods that require or return angular information do so through variables of this type.

Examples:

  animFileExport.cpp, animFileUtils.cpp, animFileUtils.h, D3DResourceManager.cpp, shellNode.cpp, and swissArmyManip.cpp.

`#include <MAngle.h>`

List of all members.

## Public Types
enum | Unit { kInvalid, kRadians, kDegrees, kAngMinutes, kAngSeconds, kLast }
| Available Unit Systems. More...
## Public Member Functions
| MAngle ()
| Default constructor.
| MAngle (const MAngle &src)
| Copy constructor.
| MAngle (double value, Unit u=kRadians)
| Class constructor.
| ~MAngle ()
| Class destructor.
MAngle & | operator= (const MAngle &other)
| Assignment operator.
Unit | unit () const
| Current unit.
double | value () const
| Current value.
MStatus | setUnit (Unit newUnit)
| Set current unit.
MStatus | setValue (double newValue)
| Set current value.
double | as (Unit otherUnit, MStatus *ReturnStatus=NULL) const
| Unit conversion.
double | asUnits (Unit otherUnit, MStatus *ReturnStatus=NULL) const
| Unit conversion.
double | asRadians () const
| Convert to radians.
double | asDegrees () const
| Convert to degrees.
double | asAngMinutes () const
| Convert to minutes of arc.
double | asAngSeconds () const
| Convert to seconds of arc.
## Static Public Member Functions
static Unit | uiUnit ()
| Working unit.
static MStatus | setUIUnit (Unit newUnit)
| Set working unit.
static Unit | internalUnit ()
| Internal unit.
static double | internalToUI (double internalValue)
| Unit conversion.
static double | uiToInternal (double uiValue)
| Unit conversion.
static const char * | className ()
| Returns the name of this class.
static MStatus | setInternalUnit (Unit internalUnit)
| This method is obsolete.

## Member Enumeration Documentation

enum Unit

Search for all occurrences

Available Unit Systems.

Enumerator:

  kInvalid | Invalid value. Search for all occurrences
  kRadians | Radians. Search for all occurrences
  kDegrees | Degrees. Search for all occurrences
  kAngMinutes | Minutes of Arc. Search for all occurrences
  kAngSeconds | Seconds of Arc. Search for all occurrences
  kLast | Last enum value. Search for all occurrences

## Constructor & Destructor Documentation

MAngle | ( |  | ) |

Default constructor.

Initialize the MAngle instance to 0 in the current internal units.

See also:
  internalUnit().

MAngle | ( | const MAngle & | src | ) |

Copy constructor.

Parameters:

  [in] | src | The source MAngle object.

MAngle | ( | double | value,
|  | MAngle::Unit | unitSystem = `kRadians`
| ) |  |

Class constructor.

Initialize the MAngle instance to the given value in the given unit system.

Parameters:

  [in] | value | The initial value of the instance
  [in] | unitSystem | The unit system for the initial value

## Member Function Documentation

MAngle & operator= | ( | const MAngle & | src | ) |

Assignment operator.

Parameters:

  [in] | src | The source MAngle object.

Returns:
  Reference to the MAngle

MAngle::Unit unit | ( |  | ) | const

Search for all occurrences

Current unit.

Return the units currently in effect for this instance.

Returns:
  An element of the MAngle::Unit enum

double value | ( |  | ) | const

Search for all occurrences

Current value.

Return the value of the current instance in the currently set units.

Returns:
  The current value of the instance

MStatus setUnit | ( | MAngle::Unit | newUnit | ) |

Search for all occurrences

Set current unit.

Set the unit used by this instance. This will not affect the current value of the MAngle.

Parameters:

  [in] | newUnit | An element of the MAngle::Unit enum

Returns:
  Status code.

Status Codes:
  - MS::kSuccess the unit of set succesfully.
  - MS::kFailure the unit is invalid.

MStatus setValue | ( | double | newValue | ) |

Search for all occurrences

Set current value.

Set the value of this instance.

Parameters:

  [in] | newValue | The new value in the units currently in effect

Returns:
  Always returns MS::kSuccess

double as | ( | MAngle::Unit | otherUnit,
|  | MStatus * | ReturnStatus = `NULL`
| ) |  | const

Search for all occurrences

Unit conversion.

Return the current value of this instance in the provided units.

Parameters:

  [in] | otherUnit | An element of the MAngle::Unit enum specifying the desired units
  [out] | ReturnStatus | Return status

Returns:
  The current value in the given units

Status Codes:
  - MS::kSuccess operation successful
  - MS::kFailure operation failed

Examples:
  animFileExport.cpp, and animFileUtils.cpp.

double asUnits | ( | MAngle::Unit | otherUnit,
|  | MStatus * | ReturnStatus = `NULL`
| ) |  | const

Search for all occurrences

Unit conversion.

Return the current value of this instance in the provided units.

Parameters:

  [in] | otherUnit | An element of the MAngle::Unit enum specifying the desired units
  [out] | ReturnStatus | Return status

Returns:
  The current value in the given units

Status Codes:
  - MS::kSuccess operation successful
  - MS::kFailure operation failed

double asRadians | ( |  | ) | const

Search for all occurrences

Convert to radians.

Return the current value of this instance in radians.

Returns:
  The current value in the radians

Examples:
  shellNode.cpp, and swissArmyManip.cpp.

double asDegrees | ( |  | ) | const

Search for all occurrences

Convert to degrees.

Return the current value of this instance in degrees.

Returns:
  The current value in the degrees

double asAngMinutes | ( |  | ) | const

Search for all occurrences

Convert to minutes of arc.

Return the current value of this instance in minutes of arc.

Returns:
  The current value in the minutes of arc

double asAngSeconds | ( |  | ) | const

Search for all occurrences

Convert to seconds of arc.

Return the current value of this instance in seconds of arc.

Returns:
  The current value in the seconds of arc

MAngle::Unit uiUnit | ( |  | ) | `[static]`

Search for all occurrences

Working unit.

Returns the Working Units (or UI units) chosen in the settings of the prefs window.

Returns:
  An element of the MAngle::Unit enum

Examples:
  animFileExport.cpp, and animFileUtils.cpp.

MStatus setUIUnit | ( | MAngle::Unit | newUnit | ) | `[static]`

Search for all occurrences

Set working unit.

Set the unit system to be used by the user in the UI. This will not change the return value of the MAngle::value() method of this instance of MAngle.

Parameters:

  [in] | newUnit | and element of the MAngle::Unit enum.

Returns:
  MS::kSuccess if a valid unit was provided, MS::kFailure otherwise.

MAngle::Unit internalUnit | ( |  | ) | `[static]`

Search for all occurrences

Internal unit.

Returns the internal unit system used by Maya. This is the unit system Maya stores angles in.

Returns:
  The internal unit for angles

Examples:
  animFileUtils.cpp.

double internalToUI | ( | double | internalValue | ) | `[static]`

Search for all occurrences

Unit conversion.

Converts a value from Maya's internal units to the current units used in the UI.

Parameters:

  [in] | internalValue | a value in internal units

Returns:
  The value in UI units

double uiToInternal | ( | double | uiValue | ) | `[static]`

Search for all occurrences

Unit conversion.

Converts a value from the units Maya is currently uses in the UI to the Maya internal unit system.

Parameters:

  [in] | uiValue | a value in UI units

Returns:
  The value in internal units.

const char * className | ( |  | ) | `[static]`

Search for all occurrences

Returns the name of this class.

Returns:
  The name of this class.

MStatus setInternalUnit | ( | MAngle::Unit | internalUnit | ) | `[static]`

Search for all occurrences

This method is obsolete.

Deprecated:
  Changing the internal units is generally not a good idea and using the method may often produce unexpected results.

It is recommended to just read the values and convert them to the units desired.

Sets the internal unit system which Maya uses to store angles.

Parameters:

  [in] | internalUnit | the internal unit for angles

Returns:
  Status code

Status Codes:
  - MS::kSuccess a valid unit was provided
  - MS::kFailure a valid unit was not provided

MAngle MAngle MAngle MAngle MAngle MAngle MAngle MAngle MAngle MAngle
MAngle MAngle MAngle MAngle MAngle MAngle MAngle MAngle MAngle MAngle