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® 2009 © 1997-2008 Autodesk, Inc. All rights reserved. Generated with doxygen 1.5.6