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

#include <MAngle.h>

List of all members.


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.


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.
MAngleoperator= (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 MStatus setInternalUnit (Unit internalUnit)
 This method is obsolete.

Member Enumeration Documentation

Available Unit Systems.

Enumerator:
kInvalid  Invalid value.
kRadians  Radians.
kDegrees  Degrees.
kAngMinutes  Minutes of Arc.
kAngSeconds  Seconds of Arc.
kLast  Last enum value.


Constructor & Destructor Documentation

MAngle::MAngle (  ) 

Default constructor.

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

See also:
internalUnit().

MAngle::MAngle ( const MAngle src  ) 

Copy constructor.

Parameters:
[in] src The source MAngle object.

MAngle::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 & MAngle::operator= ( const MAngle src  ) 

Assignment operator.

Parameters:
[in] src The source MAngle object.
Returns:
Reference to the MAngle

MAngle::Unit MAngle::unit (  )  const

Current unit.

Return the units currently in effect for this instance.

Returns:
An element of the MAngle::Unit enum

double MAngle::value (  )  const

Current value.

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

Returns:
The current value of the instance

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

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:

MStatus MAngle::setValue ( double  newValue  ) 

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 MAngle::as ( MAngle::Unit  otherUnit,
MStatus ReturnStatus = NULL 
) const

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:
Examples:

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

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:

double MAngle::asRadians (  )  const

Convert to radians.

Return the current value of this instance in radians.

Returns:
The current value in the radians
Examples:

double MAngle::asDegrees (  )  const

Convert to degrees.

Return the current value of this instance in degrees.

Returns:
The current value in the degrees

double MAngle::asAngMinutes (  )  const

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 MAngle::asAngSeconds (  )  const

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 MAngle::uiUnit (  )  [static]

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:

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

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 MAngle::internalUnit (  )  [static]

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:

double MAngle::internalToUI ( double  internalValue  )  [static]

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 MAngle::uiToInternal ( double  uiValue  )  [static]

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.

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

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:


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