C++ API Reference
|
Selection list supporting soft selection and symmetry. More...
#include <MRichSelection.h>
Public Member Functions | |
MRichSelection () | |
Class constructor. More... | |
MRichSelection (const MRichSelection &src) | |
Copy constructor. More... | |
virtual | ~MRichSelection () |
Class destructor. More... | |
MStatus | getSelection (MSelectionList &selection) const |
Returns a copy of the non-symmetry component of the rich selection. More... | |
MStatus | getSymmetry (MSelectionList &symmetry) const |
Returns a copy of the symmetry component of the rich selection. More... | |
MStatus | getSymmetryMatrix (MMatrix &symmetryMatrix, MSpace::Space &space) const |
Returns the raw symmetry matrix to use for the symmetric components of the rich selection. More... | |
MStatus | 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. More... | |
MStatus | getSymmetryPlane (const MDagPath &path, MSpace::Space space, MPlane &plane) const |
Returns the plane of symmetry. More... | |
MStatus | clear () |
This method empties the rich selection. More... | |
MStatus | setSelection (const MSelectionList &selection) |
Sets the non-symmetry component of the rich selection. More... | |
Static Public Member Functions | |
static const char * | className () |
Returns the name of this class. More... | |
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).
OPENMAYA_MAJOR_NAMESPACE_OPEN MRichSelection | ( | ) |
Class constructor.
Creates an empty rich selection.
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. |
|
virtual |
Class destructor.
Removes the selection list.
MStatus getSelection | ( | MSelectionList & | selection | ) | const |
Returns a copy of the non-symmetry component of the rich selection.
[out] | selection | Storage for the selection list |
MStatus getSymmetry | ( | MSelectionList & | symmetry | ) | const |
Returns a copy of the symmetry component of the rich selection.
[out] | symmetry | Storage for the symmetric selection list |
MStatus 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 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 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 clear | ( | ) |
This method empties the rich selection.
MStatus setSelection | ( | const MSelectionList & | selection | ) |
Sets the non-symmetry component of the rich selection.
[in] | selection | The selection list |
|
static |
Returns the name of this class.