Public Types | Public Member Functions | Static Public Member Functions | Friends

MPxManipContainer Class Reference

This reference page is linked to from the following overview topics: Extension for Autodesk Maya 2013, Parent class descriptions, MPxNode and its derived classes, Writing a Manipulator, Manipulator Containers, Communication Between Manipulators and Nodes, Connect Manipulators to the Show Manipulator Tool, Removal of MStatus return codes from .NET API.


Search for all occurrences

Detailed Description

Base class for user defined manipulator containers.

MPxManipContainer is the base class for user-defined container manipulators. This class is derived from MPxNode since manipulators in Maya are dependency nodes.

MPxManipContainer is a container manipulator that has at least one base manipulator. MPxManipContainer has methods for adding the following base manipulators types to the container: FreePointTriadManip, DirectionManip, DistanceManip, PointOnCurveManip, PointOnSurfaceManip, DiscManip, CircleSweepManip, ToggleManip, StateManip, and CurveSegmentManip.

A container manipulator has one converter which is the interface between the container's children manipulators and the node plugs they affect. The values on the converter that are related to children manipulators are called converterManipValues, and the values on the converter that are related to the node plugs are called converterPlugValues.

The conversion between converterManipValues and converterPlugValues are performed through conversion callback methods, except when there is a one-to-one connection between a converterManipValue and a converterPlugValue.

There are two kinds of conversion callback methods: manipToPlug and plugToManip. A plugToManipConversionCallback is used to calculate a converterManipValue from various converterPlugValues. This callback has access to all the converterPlugValues and returns the value of a converterManipValue. A manipToPlugConversionCallback is used to calculate a converterPlugValue from various converterManipValues. This callback has access to all the converterManipValues and returns the value of a converterPlugValue.

In order for an MPxManipContainer to be able to run, the manipulator needs to know that the initialization is finished through the finishAddingManips method.

Examples:

componentScaleManip.cpp, customAttrManip.cpp, footPrintManip.cpp, lineManipContainer.h, moveManip.cpp, rotateManip.cpp, surfaceBumpManip.cpp, and swissArmyManip.cpp.

#include <MPxManipContainer.h>

Inheritance diagram for MPxManipContainer:
Inheritance graph
[legend]

List of all members.

Public Types

enum  baseType {
  kFreePointTriadManip, kDirectionManip, kDistanceManip, kPointOnCurveManip,
  kPointOnSurfaceManip, kDiscManip, kCircleSweepManip, kToggleManip,
  kStateManip, kCurveSegmentManip, kCustomManip
}
 

Built-in manipulator types.

More...
typedef MManipData(MPxManipContainer::* plugToManipConversionCallback )(unsigned int manipIndex)
 Pointer to a plug-to-manip conversion callback function.
typedef MManipData(MPxManipContainer::* manipToPlugConversionCallback )(unsigned int plugIndex)
 Pointer to a manip-to-plug conversion callback function.

Public Member Functions

 MPxManipContainer ()
 Constructor.
virtual ~MPxManipContainer ()
 Destructor.
virtual MPxNode::Type type () const
 This method returns the type of the node.
virtual void draw (M3dView &view, const MDagPath &path, M3dView::DisplayStyle style, M3dView::DisplayStatus status)
 This method can be overloaded to customize the drawing of the child manipulators.
virtual MStatus connectToDependNode (const MObject &dependNode)
 This method connects the manipulator to the dependency node.
virtual MStatus createChildren ()
 This method should be overridden in user defined manipulators.
MDagPath addFreePointTriadManip (const MString &manipName, const MString &pointName)
 This method creates a FreePointTriadManip and adds it to the MPxManipContainer container.
MDagPath addDirectionManip (const MString &manipName, const MString &directionName)
 This method creates a DirectionManip and adds it to the MPxManipContainer container.
MDagPath addDistanceManip (const MString &manipName, const MString &distanceName)
 This method creates a DistanceManip and adds it to the MPxManipContainer container.
MDagPath addPointOnCurveManip (const MString &manipName, const MString &paramName)
 This method creates a PointOnCurveManip and adds it to the MPxManipContainer container.
MDagPath addPointOnSurfaceManip (const MString &manipName, const MString &paramName)
 This method creates a PointOnSurfaceManip and adds it to the MPxManipContainer container.
MDagPath addDiscManip (const MString &manipName, const MString &angleName)
 This method creates a DiscManip and adds it to the MPxManipContainer container.
MDagPath addCircleSweepManip (const MString &manipName, const MString &angleName)
 This method creates a CircleSweepManip and adds it to the MPxManipContainer container.
MDagPath addToggleManip (const MString &manipName, const MString &toggleName)
 This method creates a ToggleManip and adds it to the MPxManipContainer container.
MDagPath addStateManip (const MString &manipName, const MString &stateName)
 This method creates a StateManip and adds it to the MPxManipContainer container.
MDagPath addCurveSegmentManip (const MString &manipName, const MString &startParamName, const MString &endParamName)
 This method creates a CurveSegmentManip and adds it to the MPxManipContainer container.
MDagPath addRotateManip (const MString &manipName, const MString &rotationName)
 This method creates a rotate manipulator and adds it to the MPxManipContainer container.
MDagPath addScaleManip (const MString &manipName, const MString &scaleName)
 This method creates a scale manipulator and adds it to the MPxManipContainer container.
MStatus addMPxManipulatorNode (const MString &manipTypeName, const MString &manipName, MPxManipulatorNode *&proxyManip)
 This method creates a custom MPxManipulatorNode and adds it to the MPxManipContainer container.
bool isManipActive (const MFn::Type &manipType, MObject &manipObject)
 This method determines if custom manip is active & gets the current manip object.
MStatus finishAddingManips ()
 This method should be called from the user-defined manipulator plug-in near the end of the connectToDependNode method so that the converter in the manipulator can be initialized.
virtual MManipData plugToManipConversion (unsigned int manipIndex)
 This virtual method calculates and returns the requested manipulator value, based upon the values of plugs on the nodes being manipulated.
virtual MManipData manipToPlugConversion (unsigned int manipIndex)
 This virtual method calculates and returns the requested plug value, based upon the container's manipulator values.
void addPlugToManipConversion (unsigned int manipIndex)
 This method adds a plug to manipulator converter for the specified manipulator value (e.g.
unsigned int addManipToPlugConversion (MPlug &plug)
 This method adds a manipulator to plug converter for the specified plug.
void addPlugToManipConversionCallback (unsigned int manipIndex, plugToManipConversionCallback callback)
 NO SCRIPT SUPPORT.
unsigned int addManipToPlugConversionCallback (MPlug &plug, manipToPlugConversionCallback callback)
 NO SCRIPT SUPPORT.
MStatus getConverterManipValue (unsigned int manipIndex, unsigned int &value)
 This method retrieves the value of a converterManipValue of type unsigned int at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, double &value)
 This method retrieves the value of a converterManipValue of type double at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, double &x, double &y)
 This method retrieves the x and y values of a converterManipValue of type double at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, MPoint &point)
 This method retrieves the value of a converterManipValue of type MPoint at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, MVector &vector)
 This method retrieves the value of a converterManipValue of type MVector at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, MMatrix &matrix)
 This method retrieves the value of a converterManipValue of type MMatrix at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, MEulerRotation &rotation)
 This method retrieves the value of a converterManipValue of type MEulerRotation at a given index from the converter.
MStatus getConverterManipValue (unsigned int manipIndex, MTransformationMatrix &xform)
 This method retrieves the value of a converterManipValue of type MTransformationMatrix at a given index from the converter.
MStatus getConverterPlugValue (unsigned int plugIndex, double &value)
 This method retrieves the value of a converterPlugValue of type double at a given index from the converter.
MStatus getConverterPlugValue (unsigned int plugIndex, double &x, double &y)
 This method retrieves the x and y values of a converterPlugValue of type double at a given index from the converter.
MStatus getConverterPlugValue (unsigned int plugIndex, MPoint &point)
 This method retrieves the value of a converterPlugValue of type MPoint at a given index from the converter.
MStatus getConverterPlugValue (unsigned int plugIndex, MVector &vector)
 This method retrieves the value of a converterPlugValue of type MVector at a given index from the converter.
MStatus getConverterPlugValue (unsigned int plugIndex, MMatrix &matrix)
 This method retrieves the value of a converterPlugValue of type MMatrix at a given index from the converter.
MStatus getConverterPlugValue (unsigned int plugIndex, MEulerRotation &rotation)
 This method retrieves the value of a converterPlugValue of type MEulerRotation at a given index from the converter.
virtual MStatus doPress ()
 This method gets called when the manipulator recieves a mouse down event.
virtual MStatus doDrag ()
 This method gets called when the manipulator recieves a mouse drag event.
virtual MStatus doRelease ()
 This method gets called when the manipulator recieves a mouse release event.

Static Public Member Functions

static MStatus initialize ()
 This method initializes the manipulator, and should be overriden in user-defined manipulators.
static MPxManipContainernewManipulator (const MString &manipName, MObject &manipObject, MStatus *ReturnStatus=NULL)
 This static function is used to create a user-defined manipulator.
static MStatus addToManipConnectTable (MTypeId &)
 This method adds the user defined node as an entry in the manipConnectTable so that when this node is selected the user can use the show manip tool to get the user defined manipulator associated with this node.
static MStatus removeFromManipConnectTable (MTypeId &)
 This method removes the user defined node entry from the manipConnectTable.
static const char * className ()
 Returns the name of this class.

Friends

class MFnPlugin

Member Typedef Documentation

typedef MManipData(MPxManipContainer::* plugToManipConversionCallback)(unsigned int manipIndex)

Pointer to a plug-to-manip conversion callback function.

Parameters:
[in]manipIndexIndex of the manipulator value to be calculated.
typedef MManipData(MPxManipContainer::* manipToPlugConversionCallback)(unsigned int plugIndex)

Pointer to a manip-to-plug conversion callback function.

Parameters:
[in]plugIndexIndex of the plug value to be calculated.

Member Enumeration Documentation

enum baseType

Built-in manipulator types.

Enumerator:
kFreePointTriadManip 

 

kDirectionManip 

 

kDistanceManip 

 

kPointOnCurveManip 

 

kPointOnSurfaceManip 

 

kDiscManip 

 

kCircleSweepManip 

 

kToggleManip 

 

kStateManip 

 

kCurveSegmentManip 

 

kCustomManip 

 


Member Function Documentation

MPxNode::Type type ( ) const [virtual]

This method returns the type of the node.

Returns:
MPxNode::kManipContainer

Reimplemented from MPxNode.

MStatus initialize ( ) [static]

This method initializes the manipulator, and should be overriden in user-defined manipulators.

Returns:
Status of the operation. The base class always returns MS::kSuccess.
Examples:
componentScaleManip.cpp, customAttrManip.cpp, footPrintManip.cpp, lineManipContainer.cpp, lineManipContainer.h, moveManip.cpp, rotateManip.cpp, surfaceBumpManip.cpp, and swissArmyManip.cpp.
MPxManipContainer * newManipulator ( const MString manipName,
MObject manipObject,
MStatus ReturnStatus = NULL 
) [static]

This static function is used to create a user-defined manipulator.

The manipObject argument is set to the new manipulator node. Note that the manipName argument must be the name of a manipulator derived from MPxManipContainer. Also note that this method creates the newManipulator, but doesn't add it to the DAG. The primary use of this method is in conjunction with MPxSelectionContext::addManipulator, to add user-defined manipulators to a context.

Parameters:
[in]manipNamemanipulator name
[out]manipObjectmanipulator object
[out]ReturnStatusStatus code.
Returns:
The new manipulator
void draw ( M3dView view,
const MDagPath path,
M3dView::DisplayStyle  style,
M3dView::DisplayStatus  status 
) [virtual]

This method can be overloaded to customize the drawing of the child manipulators.

If the default draw is also required, this method should be called from the derived method.

Parameters:
[in]viewthe view in which to draw
[in]paththe current path
[in]stylethe display appearance
[in]statusthe display status
Examples:
componentScaleManip.cpp, customAttrManip.cpp, footPrintManip.cpp, lineManipContainer.cpp, lineManipContainer.h, moveManip.cpp, rotateManip.cpp, surfaceBumpManip.cpp, and swissArmyManip.cpp.
MStatus connectToDependNode ( const MObject node) [virtual]

This method connects the manipulator to the dependency node.

This is a virtual method and needs to be overridden from the plug-in.

Parameters:
[in]nodethe node to which the manipulator should be connected
Returns:
MS::kSuccess if successful, an error status otherwise. The base class returns MS::kFailure if there are no connections between manip values and plug values.
Examples:
componentScaleManip.cpp, customAttrManip.cpp, footPrintManip.cpp, lineManipContainer.h, moveManip.cpp, rotateManip.cpp, surfaceBumpManip.cpp, and swissArmyManip.cpp.
MStatus createChildren ( ) [virtual]

This method should be overridden in user defined manipulators.

This method is called after the user node derived from MPxManipContainer is set up.

Examples:
componentScaleManip.cpp, customAttrManip.cpp, footPrintManip.cpp, lineManipContainer.h, moveManip.cpp, rotateManip.cpp, surfaceBumpManip.cpp, and swissArmyManip.cpp.
MDagPath addFreePointTriadManip ( const MString manipName,
const MString pointName 
)

This method creates a FreePointTriadManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]pointNamepoint name
Returns:
New FreePointTriadManip
MDagPath addDirectionManip ( const MString manipName,
const MString directionName 
)

This method creates a DirectionManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]directionNamedirection name
Returns:
New DirectionManip
MDagPath addDistanceManip ( const MString manipName,
const MString distanceName 
)

This method creates a DistanceManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]distanceNamedistance name
Returns:
New DistanceManip
MDagPath addPointOnCurveManip ( const MString manipName,
const MString paramName 
)

This method creates a PointOnCurveManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]paramNameparameter name
Returns:
New PointOnCurveManip
MDagPath addPointOnSurfaceManip ( const MString manipName,
const MString paramName 
)

This method creates a PointOnSurfaceManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]paramNameparameter name
Returns:
New PointOnSurfaceManip
MDagPath addDiscManip ( const MString manipName,
const MString angleName 
)

This method creates a DiscManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]angleNameangle name
Returns:
New DiscManip
MDagPath addCircleSweepManip ( const MString manipName,
const MString angleName 
)

This method creates a CircleSweepManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]angleNameangle name
Returns:
New CircleSweepManip
MDagPath addToggleManip ( const MString manipName,
const MString toggleName 
)

This method creates a ToggleManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]toggleNametoggle name
Returns:
New ToggleManip
MDagPath addStateManip ( const MString manipName,
const MString stateName 
)

This method creates a StateManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]stateNamestate name
Returns:
New StateManip
MDagPath addCurveSegmentManip ( const MString manipName,
const MString startParamName,
const MString endParamName 
)

This method creates a CurveSegmentManip and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]startParamNamestart parameter name
[in]endParamNameend parameter name
Returns:
New CurveSegmentManip
MDagPath addRotateManip ( const MString manipName,
const MString rotationName 
)

This method creates a rotate manipulator and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]rotationNamename of the rotation vector
Returns:
Dag path to the new rotate manipulator
MDagPath addScaleManip ( const MString manipName,
const MString scaleName 
)

This method creates a scale manipulator and adds it to the MPxManipContainer container.

Parameters:
[in]manipNamemanipulator name
[in]scaleNamename of the scale vector
Returns:
Dag path to the new scale manipulator
MStatus addMPxManipulatorNode ( const MString manipTypeName,
const MString manipName,
MPxManipulatorNode *&  proxyManip 
)

This method creates a custom MPxManipulatorNode and adds it to the MPxManipContainer container.

Parameters:
[in]manipTypeNamemanipulator name
[in]manipNamename of the manip
[out]proxyManipreturns a pointer to the new manipulator
Returns:
bool isManipActive ( const MFn::Type manipType,
MObject manipObject 
)

This method determines if custom manip is active & gets the current manip object.

Parameters:
[in]manipTypethe type of the custom manip
[in]manipObjectmanipulator object
Returns:
  • true custom manip is active
  • false custom manip is inactive
MStatus finishAddingManips ( )

This method should be called from the user-defined manipulator plug-in near the end of the connectToDependNode method so that the converter in the manipulator can be initialized.

The converter cannot be initialized until all the connections from the manip values to the plug values have been specified.

Returns:
MStatus addToManipConnectTable ( MTypeId mid) [static]

This method adds the user defined node as an entry in the manipConnectTable so that when this node is selected the user can use the show manip tool to get the user defined manipulator associated with this node.

Note that the name of the manipulator node has to be the name of the plug-in node appended with "Manip".

Parameters:
[in]midid of the user defined node
Returns:
MS::kSuccess if the node has been successfully added to the table.
Examples:
footPrintManip.cpp, and swissArmyManip.cpp.
MStatus removeFromManipConnectTable ( MTypeId id) [static]

This method removes the user defined node entry from the manipConnectTable.

Parameters:
[in]idid of the user defined node
Returns:
MS::kSuccess if the node has been successfully removed from the table.
MManipData plugToManipConversion ( unsigned int  manipIndex) [virtual]

This virtual method calculates and returns the requested manipulator value, based upon the values of plugs on the nodes being manipulated.

To use, call addPlugToManipConversion() for each manipulator value (e.g. the start point of a distance manip) you want this method to calculate, then implement this method to calculate those manipulator values. Each manipulator value is identified by the unique index returned by the corresponding method of its functionset (e.g. MFnDistanceManip::startPointIndex).

Parameters:
[in]manipIndexthe index of the manipulator value to be calculated
Returns:
New manipulator value.
Examples:
componentScaleManip.cpp.
MManipData manipToPlugConversion ( unsigned int  plugIndex) [virtual]

This virtual method calculates and returns the requested plug value, based upon the container's manipulator values.

To use, call addManipToPlugConversion() for each plug whose value you want this method to calculate then implement this method to calculate those plug values. Each plug is identified by the unique index returned by the addManipToPlugConversion() call.

Parameters:
[in]plugIndexthe index of the plug value to be calculated
Returns:
New plug value.
Examples:
componentScaleManip.cpp.
void addPlugToManipConversion ( unsigned int  manipIndex)

This method adds a plug to manipulator converter for the specified manipulator value (e.g.

the start point of a distance manip). The converter must be implemented in the plugToManipConversion() virtual method of this class.

NOTE: The conversion methods and callback methods of this class should not be mixed. The conversion methods are: addManipToPlugConversion(), addManipToPlugConversion() The callback methods are: addPlugToManipConversionCallback() addManipToPlugConversionCallback()

Parameters:
[in]manipIndexthe index of the manipulator value for which the converter is being requested. The index is determined by calling the appropriate method of the manipulator's functionset (e.g. MFnDistanceManip::startPointIndex).
unsigned int addManipToPlugConversion ( MPlug plug)

This method adds a manipulator to plug converter for the specified plug.

The converter must be implemented in the manipToPlugConversion() virtual method of this class.

NOTE: The conversion methods and callback methods of this class should not be mixed. The conversion methods are: addManipToPlugConversion(), addManipToPlugConversion() The callback methods are: addPlugToManipConversionCallback() addManipToPlugConversionCallback()

Parameters:
[in]plugthe plug for which the converter is being requested.
Returns:
Index used to identify the plug inside the manipToPlugConversion() method.
void addPlugToManipConversionCallback ( unsigned int  manipIndex,
plugToManipConversionCallback  callback 
)

NO SCRIPT SUPPORT.

This method adds a callback which calculates the specified manipulator value (e.g.

the start point of a distance manip) based on the plug values of the nodes being manipulated.

NOTE: The conversion methods and callback methods of this class should not be mixed. The conversion methods are: addManipToPlugConversion(), addManipToPlugConversion() The callback methods are: addPlugToManipConversionCallback() addManipToPlugConversionCallback()

Parameters:
[in]manipIndexthe index of the manipulator value for which the callback will be registered. The index is determined by calling the appropriate method of the manipulator's functionset (e.g. MFnDistanceManip::startPointIndex).
[in]callbackthe callback that calculates a converterManipValue at the specified index from converterPlugValues
unsigned int addManipToPlugConversionCallback ( MPlug plug,
manipToPlugConversionCallback  callback 
)

NO SCRIPT SUPPORT.

This method adds a callback that calculates the specified plug value based on the container's manipulator values.

If the same callback is used to calculate several different plug values then the indices returned by this method can be used to distinguish between them.

NOTE: The conversion methods and callback methods of this class should not be mixed. The conversion methods are: addManipToPlugConversion(), addManipToPlugConversion() The callback methods are: addPlugToManipConversionCallback() addManipToPlugConversionCallback()

Parameters:
[in]plugthe plug for which the callback will be registered
[in]callbackthe callback that calculates a converterPlugValue for the specified plug from converterManipValues
Returns:
Index used to identify the plug in calls to the callback.
MStatus getConverterManipValue ( unsigned int  manipIndex,
unsigned int &  value 
)

This method retrieves the value of a converterManipValue of type unsigned int at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]valuethe value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
double &  value 
)

This method retrieves the value of a converterManipValue of type double at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]valuethe value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
double &  x,
double &  y 
)

This method retrieves the x and y values of a converterManipValue of type double at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]xthe x value at the specified index
[out]ythe y value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
MPoint point 
)

This method retrieves the value of a converterManipValue of type MPoint at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]pointthe value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
MVector vector 
)

This method retrieves the value of a converterManipValue of type MVector at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]vectorthe value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
MMatrix matrix 
)

This method retrieves the value of a converterManipValue of type MMatrix at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]matrixthe value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
MEulerRotation rotation 
)

This method retrieves the value of a converterManipValue of type MEulerRotation at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]rotationthe value at the specified index
Returns:
MStatus getConverterManipValue ( unsigned int  manipIndex,
MTransformationMatrix xform 
)

This method retrieves the value of a converterManipValue of type MTransformationMatrix at a given index from the converter.

Parameters:
[in]manipIndexthe index of the converterManipValue
[out]xformthe value at the specified index
Returns:
MStatus getConverterPlugValue ( unsigned int  plugIndex,
double &  value 
)

This method retrieves the value of a converterPlugValue of type double at a given index from the converter.

Parameters:
[in]plugIndexthe index of the converterPlugValue
[out]valuethe value at the specified index
Returns:
MStatus getConverterPlugValue ( unsigned int  plugIndex,
double &  x,
double &  y 
)

This method retrieves the x and y values of a converterPlugValue of type double at a given index from the converter.

Parameters:
[in]plugIndexthe index of the converterPlugValue
[out]xthe x value at the specified index
[out]ythe y value at the specified index
Returns:
MStatus getConverterPlugValue ( unsigned int  plugIndex,
MPoint point 
)

This method retrieves the value of a converterPlugValue of type MPoint at a given index from the converter.

Parameters:
[in]plugIndexthe index of the converterPlugValue
[out]pointthe value at the specified index
Returns:
MStatus getConverterPlugValue ( unsigned int  plugIndex,
MVector vector 
)

This method retrieves the value of a converterPlugValue of type MVector at a given index from the converter.

Parameters:
[in]plugIndexthe index of the converterPlugValue
[out]vectorthe value at the specified index
Returns:
MStatus getConverterPlugValue ( unsigned int  plugIndex,
MMatrix matrix 
)

This method retrieves the value of a converterPlugValue of type MMatrix at a given index from the converter.

Parameters:
[in]plugIndexthe index of the converterPlugValue
[out]matrixthe value at the specified index
Returns:
MStatus getConverterPlugValue ( unsigned int  plugIndex,
MEulerRotation rotation 
)

This method retrieves the value of a converterPlugValue of type MEulerRotation at a given index from the converter.

Parameters:
[in]plugIndexthe index of the converterPlugValue
[out]rotationthe value at the specified index
Returns:
MStatus doPress ( ) [virtual]

This method gets called when the manipulator recieves a mouse down event.

You should return kUnknownParameter to specify that maya should handle this connection or if you want maya to process the connection as well.

Returns:
Examples:
customAttrManip.cpp.
MStatus doDrag ( ) [virtual]

This method gets called when the manipulator recieves a mouse drag event.

You should return kUnknownParameter to specify that maya should handle this connection or if you want maya to process the connection as well.

Returns:
Examples:
customAttrManip.cpp.
MStatus doRelease ( ) [virtual]

This method gets called when the manipulator recieves a mouse release event.

You should return kUnknownParameter to specify that maya should handle this connection or if you want maya to process the connection as well.

Returns:
Examples:
customAttrManip.cpp.
const char * className ( ) [static]

Returns the name of this class.

Returns:
The name of this class.

Reimplemented from MPxNode.


MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer
MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer MPxManipContainer