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

#include <MRichSelection.h>

List of all members.


Detailed Description

Selection list supporting soft selection and symmetry.

This class implements a selection list that support soft selection and symmetry.

The rich selection is split into two halves: the "normal" side, and an optional symmetric component. Components on both sides can include weight data which is used to specify both the amount of influence and the proximity to the centre of symmetry.

In addition to the selected objects, the rich selection also includes information about the axis of symmetry so that operations can determine how to process any symmetric selection (e.g. reflect transformations, etc).


Public Member Functions

  MRichSelection ()
  MRichSelection (const MRichSelection &src)
virtual  ~MRichSelection ()
MStatus  getSelection (MSelectionList &selection) const
MStatus  getSymmetry (MSelectionList &symmetry) const
MStatus  getSymmetryMatrix (MMatrix &symmetryMatrix, MSpace::Space &space) const
MStatus  getSymmetryMatrix (const MDagPath &path, MSpace::Space space, MMatrix &symmetryMatrix) const
MStatus  getSymmetryPlane (const MDagPath &path, MSpace::Space space, MPlane &plane) const
MStatus  clear ()

Friends

class  MGlobal

Constructor & Destructor Documentation

MRichSelection::MRichSelection (  ) 

Class constructor. Creates an empty rich selection.

MRichSelection::MRichSelection ( const MRichSelection src  ) 

Copy constructor. This constructor will copy the contents of the given selection list into the newly created selection list.

Parameters:
[in]  src  the rich selection to be copied.

MRichSelection::~MRichSelection (  )  [virtual]

Class destructor. Removes the selection list.


Member Function Documentation

MStatus MRichSelection::getSelection ( MSelectionList selection  )  const

Returns a copy of the non-symmetry component of the rich selection.

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

MStatus MRichSelection::getSymmetry ( MSelectionList symmetry  )  const

Returns a copy of the symmetry component of the rich selection.

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

MStatus MRichSelection::getSymmetryMatrix ( MMatrix symmetryMatrix,
MSpace::Space space  
) const

Returns the raw symmetry matrix to use for the symmetric components of the rich selection. The caller is responsible for handling any necessary transformation space conversions when using this version of getSymmetryMatrix.

Parameters:
[out]  symmetryMatrix  Storage for the symmetry matrix
[out]  space  The transformation space of the symmetryMatrix
Returns:
Status code
Status Codes:

MStatus MRichSelection::getSymmetryMatrix ( const MDagPath path,
MSpace::Space  space,
MMatrix symmetryMatrix  
) const

Returns the symmetry matrix to use for the symmetric component of the specified DAG object. This method handles any matrix space conversions for you.

Parameters:
[in]  path  The DAG path the matrix should be calculated for
[in]  space  The space the matrix should be calculated in. Only kWorld and kObject are currently supported.
[out]  symmetryMatrix  Storage for the symmetry matrix
Returns:
Status code
Status Codes:

MStatus MRichSelection::getSymmetryPlane ( const MDagPath path,
MSpace::Space  space,
MPlane symmetryPlane  
) const

Returns the plane of symmetry. This can be used to enforce seam weights in tools that support symmetry. Note that the direction of the plane carries no significance (specifically, having a positive offset from the plane does not imply a point is part of the non-symmetric selection).

Parameters:
[in]  path  The DAG path the plane should be calculated for
[in]  space  The space the plane should be calculated in. Only kWorld and kObject are currently supported.
[out]  symmetryPlane  Storage for the symmetry plane
Returns:
Status code
Status Codes:

MStatus MRichSelection::clear (  ) 

This method empties the rich selection.

Returns:
Status flag
Status Codes:

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