#include <MRichSelection.h>
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 |
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.
[in] | src | the rich selection to be copied. |
MRichSelection::~MRichSelection | ( | ) | [virtual] |
Class destructor. Removes the selection list.
MStatus MRichSelection::getSelection | ( | MSelectionList & | selection | ) | const |
Returns a copy of the non-symmetry component of the rich selection.
[out] | selection | Storage for the selection list |
MStatus MRichSelection::getSymmetry | ( | MSelectionList & | symmetry | ) | const |
Returns a copy of the symmetry component of the rich selection.
[out] | symmetry | Storage for the symmetric selection list |
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.
[out] | symmetryMatrix | Storage for the symmetry matrix |
[out] | space | The transformation space of the symmetryMatrix |
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.
[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 |
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).
[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 |
MStatus MRichSelection::clear | ( | ) |
This method empties the rich selection.
Autodesk® Maya® 2009 © 1997-2008 Autodesk, Inc. All rights reserved. | Generated with 1.5.6 |